[Checkins] SVN: relstorage/trunk/ In pylibmc_wrapper, log memcache errors as warnings.
Shane Hathaway
shane at hathawaymix.org
Thu Sep 29 02:49:55 EST 2011
Log message for revision 122992:
In pylibmc_wrapper, log memcache errors as warnings.
Changed:
U relstorage/trunk/CHANGES.txt
U relstorage/trunk/relstorage/pylibmc_wrapper.py
-=-
Modified: relstorage/trunk/CHANGES.txt
===================================================================
--- relstorage/trunk/CHANGES.txt 2011-09-28 21:35:21 UTC (rev 122991)
+++ relstorage/trunk/CHANGES.txt 2011-09-29 07:49:54 UTC (rev 122992)
@@ -13,6 +13,8 @@
read-only database replica for load connections. This allows
RelStorage to use read-only database replicas whenever possible.
+TODO: provide a default random memcache prefix that is consistent per database.
+
1.5.0 (2011-06-30)
------------------
Modified: relstorage/trunk/relstorage/pylibmc_wrapper.py
===================================================================
--- relstorage/trunk/relstorage/pylibmc_wrapper.py 2011-09-28 21:35:21 UTC (rev 122991)
+++ relstorage/trunk/relstorage/pylibmc_wrapper.py 2011-09-29 07:49:54 UTC (rev 122992)
@@ -19,8 +19,11 @@
import pylibmc
from _pylibmc import MemcachedError # pylibmc >= 0.9
+import logging
+log = logging.getLogger(__name__)
+
class Client(object):
behaviors = {
"tcp_nodelay": True,
@@ -38,44 +41,51 @@
def get(self, key):
try:
return self._client.get(key)
- except MemcachedError:
+ except MemcachedError, e:
+ log.warning('get failed: %s', e)
return None
def get_multi(self, keys):
try:
return self._client.get_multi(keys)
- except MemcachedError:
+ except MemcachedError, e:
+ log.warning('get_multi failed: %s', e)
return None
def set(self, key, value):
try:
return self._client.set(
key, value, min_compress_len=self.min_compress_len)
- except MemcachedError:
+ except MemcachedError, e:
+ log.warning('set failed: %s', e)
return None
def set_multi(self, d):
try:
return self._client.set_multi(
d, min_compress_len=self.min_compress_len)
- except MemcachedError:
+ except MemcachedError, e:
+ log.warning('set_multi failed: %s', e)
return None
def add(self, key, value):
try:
return self._client.add(
key, value, min_compress_len=self.min_compress_len)
- except MemcachedError:
+ except MemcachedError, e:
+ log.warning('add failed: %s', e)
return None
def incr(self, key):
try:
return self._client.incr(key)
- except MemcachedError:
+ except MemcachedError, e:
+ log.warning('incr failed: %s', e)
return None
def flush_all(self):
try:
self._client.flush_all()
- except MemcachedError:
+ except MemcachedError, e:
+ log.warning('flush_all failed: %s', e)
return None
More information about the checkins
mailing list