6#include <userver/dist_lock/dist_lock_settings.hpp>
7#include <userver/dist_lock/dist_lock_strategy.hpp>
8#include <userver/engine/deadline.hpp>
9#include <userver/rcu/rcu.hpp>
10#include <userver/storages/postgres/options.hpp>
12USERVER_NAMESPACE_BEGIN
19 DistLockStrategy(ClusterPtr cluster,
const std::string& table,
20 const std::string& lock_name,
23 void Acquire(std::chrono::milliseconds lock_ttl,
24 const std::string& locker_id)
override;
26 void Release(
const std::string& locker_id)
override;
32 rcu::Variable<CommandControl> cc_;
33 const std::string acquire_query_;
34 const std::string release_query_;
35 const std::string lock_name_;
36 const std::string owner_prefix_;