summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMalcolm Tredinnick <malcolm.tredinnick@gmail.com>2007-10-21 19:19:32 +0000
committerMalcolm Tredinnick <malcolm.tredinnick@gmail.com>2007-10-21 19:19:32 +0000
commitef454b8a14aa3ca1503c2230f44d71b9a5164670 (patch)
tree081200fd1a0f02baf231964a7c5bec8d9be9eab2
parent0a4e4d5993f8d76d63c61c414b732b621b559556 (diff)
Fixed a bug in the db cache backend introduced in [6572].
git-svn-id: http://code.djangoproject.com/svn/django/trunk@6589 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--django/core/cache/backends/db.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/django/core/cache/backends/db.py b/django/core/cache/backends/db.py
index 8896b5974b..d54677057f 100644
--- a/django/core/cache/backends/db.py
+++ b/django/core/cache/backends/db.py
@@ -24,9 +24,6 @@ class CacheClass(BaseCache):
except (ValueError, TypeError):
self._cull_frequency = 3
- def add(self, key, value, timeout=None):
- return self._base_set('add', key, value, timeout)
-
def get(self, key, default=None):
cursor = connection.cursor()
cursor.execute("SELECT cache_key, value, expires FROM %s WHERE cache_key = %%s" % self._table, [key])
@@ -43,6 +40,9 @@ class CacheClass(BaseCache):
def set(self, key, value, timeout=None):
return self._base_set('set', key, value, timeout)
+ def add(self, key, value, timeout=None):
+ return self._base_set('add', key, value, timeout)
+
def _base_set(self, mode, key, value, timeout=None):
if timeout is None:
timeout = self.default_timeout
@@ -59,8 +59,7 @@ class CacheClass(BaseCache):
if mode == 'set' and cursor.fetchone():
cursor.execute("UPDATE %s SET value = %%s, expires = %%s WHERE cache_key = %%s" % self._table, [encoded, str(exp), key])
else:
- if mode == 'add':
- cursor.execute("INSERT INTO %s (cache_key, value, expires) VALUES (%%s, %%s, %%s)" % self._table, [key, encoded, str(exp)])
+ cursor.execute("INSERT INTO %s (cache_key, value, expires) VALUES (%%s, %%s, %%s)" % self._table, [key, encoded, str(exp)])
except DatabaseError:
# To be threadsafe, updates/inserts are allowed to fail silently
pass