diff --git a/tooz/coordination.py b/tooz/coordination.py index 3c79f3b5..d11d7ade 100644 --- a/tooz/coordination.py +++ b/tooz/coordination.py @@ -154,6 +154,9 @@ class CoordinationDriver(object): self._hooks_elected_leader = collections.defaultdict(Hooks) # A cache for group members self._group_members = collections.defaultdict(set) + self.requires_beating = ( + CoordinationDriver.heartbeat != self.__class__.heartbeat + ) def _has_hooks_for_group(self, group_id): return (len(self._hooks_join_group[group_id]) + diff --git a/tooz/drivers/memcached.py b/tooz/drivers/memcached.py index 04eb3939..b8ded044 100644 --- a/tooz/drivers/memcached.py +++ b/tooz/drivers/memcached.py @@ -215,9 +215,6 @@ class MemcachedDriver(coordination._RunWatchersMixin, #: String used to keep a key/member alive (until it next expires). STILL_ALIVE = b"It's alive!" - #: This driver requires constant periodic (heart) beatings. - requires_beating = True - def __init__(self, member_id, parsed_url, options): super(MemcachedDriver, self).__init__() options = utils.collapse(options) diff --git a/tooz/drivers/redis.py b/tooz/drivers/redis.py index 269c74d6..92010cc7 100644 --- a/tooz/drivers/redis.py +++ b/tooz/drivers/redis.py @@ -314,9 +314,6 @@ return 1 .. _Lua: http://www.lua.org """ - #: This driver requires constant periodic (heart) beatings. - requires_beating = True - def __init__(self, member_id, parsed_url, options): super(RedisDriver, self).__init__() options = utils.collapse(options, exclude=self.CLIENT_LIST_ARGS)