Opened 18 years ago

Closed 18 years ago

#2561 closed defect (fixed)

memcached backend ignores default timeout?

Reported by: Christopher Lenz <cmlenz@…> Owned by: Jacob
Component: Core (Cache system) Version: 0.95
Severity: major Keywords:
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

Okay, I might be missing something obvious here… but does the memcached backend even use the default timeout specified in the query string of the CACHE_BACKEND setting? The code doesn't suggest so. Doesn't that mean that cache entries only time out when the memory limit configured for memcached is reached?

The following patch should remedy that AFAICT:

Index: django/core/cache/backends/memcached.py
===================================================================
--- django/core/cache/backends/memcached.py     (revision 852)
+++ django/core/cache/backends/memcached.py     (working copy)
@@ -20,7 +20,7 @@
             return val
 
     def set(self, key, value, timeout=0):
-        self._cache.set(key, value, timeout)
+        self._cache.set(key, value, timeout or self.default_timeout)
 
     def delete(self, key):
         self._cache.delete(key)

BTW, there's no 0.95 version to select here.

Change History (2)

comment:1 by Adrian Holovaty, 18 years ago

Version: SVN0.95

(I've added a 0.95 version to Trac -- thanks for the pointer.)

comment:2 by Adrian Holovaty, 18 years ago

Resolution: fixed
Status: newclosed

(In [3611]) Fixed #2561 -- memcached cache backend no longer ignores default timeout. Thanks for the report and patch, Christopher Lenz

Note: See TracTickets for help on using tickets.
Back to Top