diff options
author | Julien Danjou <julien@danjou.info> | 2014-12-08 16:47:24 +0100 |
---|---|---|
committer | Julien Danjou <julien@danjou.info> | 2014-12-09 16:38:01 +0100 |
commit | 14000cd9f2e4a090ccbf7415aae4a1950cae72eb (patch) | |
tree | 573cee4220ef88db14c8ca10b497e20bc9f2a4b4 | |
parent | effcc8d13844d777ac70d59094f640cfacd67129 (diff) | |
download | tooz-14000cd9f2e4a090ccbf7415aae4a1950cae72eb.tar.gz |
memcached: add support for _destroy_group
Change-Id: I0068b2ee48ced1882f5c183e0c77b064b1e0c565
-rw-r--r-- | tooz/drivers/memcached.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/tooz/drivers/memcached.py b/tooz/drivers/memcached.py index 7ee323c..661438f 100644 --- a/tooz/drivers/memcached.py +++ b/tooz/drivers/memcached.py @@ -229,6 +229,9 @@ class MemcachedDriver(coordination.CoordinationDriver): return MemcachedFutureResult(self._executor.submit(_leave_group)) + def _destroy_group(self, group_id): + self.client.delete(self._encode_group_id(group_id)) + @_retry.retry def _get_members(self, group_id): encoded_group = self._encode_group_id(group_id) @@ -337,7 +340,10 @@ class MemcachedDriver(coordination.CoordinationDriver): def run_watchers(self): result = [] for group_id in self.client.get(self._GROUP_LIST_KEY): - group_members = set(self._get_members(group_id)) + try: + group_members = set(self._get_members(group_id)) + except coordination.GroupNotCreated: + group_members = set() old_group_members = self._group_members[group_id] for member_id in (group_members - old_group_members): |