Fix redis cache for python3

According to the redis-py docs, zrank will return the 0 based index for
the value in the sorted set.  So the logic here wasn't right to begin
with (It just means that a value at the 0-th position would never show
up as cached).  Need to compare against None to know if the value
exists in the cache.

https://redis-py.readthedocs.io/en/latest/#redis.StrictRedis.zrank

Fixes #25590
This commit is contained in:
Toshio Kuratomi 2017-06-12 08:00:44 -07:00 committed by Brian Coca
parent 498aea8acc
commit 90b1d780eb

View file

@ -84,7 +84,7 @@ class CacheModule(BaseCacheModule):
def contains(self, key):
self._expire_keys()
return (self._cache.zrank(self._keys_set, key) >= 0)
return (self._cache.zrank(self._keys_set, key) is not None)
def delete(self, key):
self._cache.delete(self._make_key(key))