summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Harlow <harlowja@gmail.com>2014-09-10 23:17:45 -0700
committerJoshua Harlow <harlowja@gmail.com>2014-09-10 23:17:45 -0700
commit9b816733024ce7d769ecfbbf5ffea8d4da17fd8a (patch)
tree3d490def53e94f248619ecf48ea375529fdc3ec7
parentbeb73ba6515de2bf891adba1112715c9f2155de7 (diff)
downloadtooz-9b816733024ce7d769ecfbbf5ffea8d4da17fd8a.tar.gz
Ensure lock list isn't mutated while iterating
While iterating over the acquired lock list we do not want the lock.release call to mutate the list that we are currently iterating over. To fix this just iterate over a copy instead so that the lock.release can remove without issue. Change-Id: I157331ca116b97e17d10854b5227ac7ee67fac57
-rw-r--r--tooz/drivers/memcached.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/tooz/drivers/memcached.py b/tooz/drivers/memcached.py
index 7f24c5c..085923c 100644
--- a/tooz/drivers/memcached.py
+++ b/tooz/drivers/memcached.py
@@ -126,7 +126,7 @@ class MemcachedDriver(coordination.CoordinationDriver):
self.heartbeat()
def stop(self):
- for lock in self._acquired_locks:
+ for lock in list(self._acquired_locks):
lock.release()
self.client.delete(self._encode_member_id(self._member_id))