Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

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
  • Loading branch information...
commit ef454b8a14aa3ca1503c2230f44d71b9a5164670 1 parent 0a4e4d5
@malcolmt malcolmt authored
Showing with 4 additions and 5 deletions.
  1. +4 −5 django/core/cache/backends/db.py
View
9 django/core/cache/backends/db.py
@@ -24,9 +24,6 @@ def __init__(self, table, params):
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 @@ def get(self, key, default=None):
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 @@ def _base_set(self, mode, key, value, timeout=None):
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
Please sign in to comment.
Something went wrong with that request. Please try again.