summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2014-09-17 09:19:50 +0000
committerGerrit Code Review <review@openstack.org>2014-09-17 09:19:50 +0000
commit07ec935900606ecc3cfe2e3b66e8fe286b24e4ad (patch)
treeb7a7727b216a0ed2c3a9ab97b0804157b9d66bd7
parent37a80126f2be04f11dd3d56465de103bd8578782 (diff)
parente98a9373063ac62dc089cb76054340b210f3f65c (diff)
downloadtooz-07ec935900606ecc3cfe2e3b66e8fe286b24e4ad.tar.gz
Merge "LOG a warning if the heartbeat can not be validated"
-rw-r--r--tooz/drivers/memcached.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/tooz/drivers/memcached.py b/tooz/drivers/memcached.py
index e92abb2..65686ed 100644
--- a/tooz/drivers/memcached.py
+++ b/tooz/drivers/memcached.py
@@ -17,6 +17,7 @@
# under the License.
import collections
+import logging
import msgpack
import pymemcache.client
@@ -27,6 +28,9 @@ from tooz import coordination
from tooz import locking
+LOG = logging.getLogger(__name__)
+
+
class Retry(Exception):
"""Exception raised if we need to retry."""
@@ -68,8 +72,12 @@ class MemcachedLock(locking.Lock):
def heartbeat(self):
"""Keep the lock alive."""
- self.coord.client.touch(self.name,
- expire=self.timeout)
+ poked = self.coord.client.touch(self.name,
+ expire=self.timeout,
+ noreply=False)
+ if not poked:
+ LOG.warn("Unable to heartbeat by updating key '%s' with extended"
+ " expiry of %s seconds", self.name, self.timeout)
def get_owner(self):
return self.coord.client.get(self.name)