Skip to content
Browse files

Fixed #16533 -- Stopped the memcache cache backend from raising an ex…

…ception if the timeout value isn't an integer. Thanks, Jeff Balogh.

git-svn-id: bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
1 parent 4f50d24 commit db594f90ba684f45bfc8033fb190afdf567ad9f0 @jezdez jezdez committed
Showing with 6 additions and 1 deletion.
  1. +1 −1 django/core/cache/backends/
  2. +5 −0 tests/regressiontests/cache/
2 django/core/cache/backends/
@@ -46,7 +46,7 @@ def _get_memcache_timeout(self, timeout):
# This means that we have to switch to absolute timestamps.
timeout += int(time.time())
- return timeout
+ return int(timeout)
def add(self, key, value, timeout=0, version=None):
key = self.make_key(key, version=version)
5 tests/regressiontests/cache/
@@ -408,6 +408,11 @@ def test_long_timeout(self):
self.assertEqual(self.cache.get('key3'), 'sausage')
self.assertEqual(self.cache.get('key4'), 'lobster bisque')
+ def test_float_timeout(self):
+ # Make sure a timeout given as a float doesn't crash anything.
+ self.cache.set("key1", "spam", 100.2)
+ self.assertEqual(self.cache.get("key1"), "spam")
def perform_cull_test(self, initial_count, final_count):
"""This is implemented as a utility method, because only some of the backends
implement culling. The culling algorithm also varies slightly, so the final

0 comments on commit db594f9

Please sign in to comment.
Something went wrong with that request. Please try again.