diff options
author | Joshua Harlow <harlowja@gmail.com> | 2014-09-10 23:17:45 -0700 |
---|---|---|
committer | Joshua Harlow <harlowja@gmail.com> | 2014-09-10 23:17:45 -0700 |
commit | 9b816733024ce7d769ecfbbf5ffea8d4da17fd8a (patch) | |
tree | 3d490def53e94f248619ecf48ea375529fdc3ec7 | |
parent | beb73ba6515de2bf891adba1112715c9f2155de7 (diff) | |
download | tooz-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.py | 2 |
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)) |