From 1c92c333ad668b173ba5abba552464ffaf990fe7 Mon Sep 17 00:00:00 2001 From: =?utf8?q?S=2E=C3=87a=C4=9Flar=20Onur?= Date: Wed, 17 Nov 2010 13:30:05 -0500 Subject: [PATCH] python-memcache responds to incr on non-existent keys raising a ValueError. Cmemcache returns None. Handle both cases --- aspects/ratelimitaspects.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/aspects/ratelimitaspects.py b/aspects/ratelimitaspects.py index 8be22e59..8c28dd59 100644 --- a/aspects/ratelimitaspects.py +++ b/aspects/ratelimitaspects.py @@ -45,8 +45,11 @@ class BaseRateLimit(object): keys_to_check = ["%s_%s_%s" % (self.prefix, api_method_source[0], (now - timedelta(minutes = minute)).strftime("%Y%m%d%H%M")) for minute in range(self.minutes + 1)] try: - mc.incr(current_key) + value = mc.incr(current_key) except ValueError: + value = None + + if value == None: mc.set(current_key, 1, time=self.expire_after) result = mc.get_multi(keys_to_check) -- 2.47.0