From 3504c80a62037d6048234b0bf3abe2f75c05af61 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Tue, 18 Jan 2011 23:56:15 +0100 Subject: [PATCH] manager: Clear mirror data, if something was changed. --- www/webapp/backend/memcached.py | 3 +++ www/webapp/backend/mirrors.py | 9 ++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/www/webapp/backend/memcached.py b/www/webapp/backend/memcached.py index bf293d52..c489d9cb 100644 --- a/www/webapp/backend/memcached.py +++ b/www/webapp/backend/memcached.py @@ -19,3 +19,6 @@ class Memcached(object): def set(self, *args, **kwargs): return self._connection.set(*args, **kwargs) + + def delete(self, *args, **kwargs): + return self._connection.delete(*args, **kwargs) diff --git a/www/webapp/backend/mirrors.py b/www/webapp/backend/mirrors.py index cc5af681..d5f348fd 100644 --- a/www/webapp/backend/mirrors.py +++ b/www/webapp/backend/mirrors.py @@ -207,10 +207,13 @@ class Mirror(object): def db(self): return Databases().webapp - def reload(self): + def reload(self, force=False): memcached = Memcached() mem_id = "mirror-%s" % self.id + if force: + memcached.delete(mem_id) + self._info = memcached.get(mem_id) if not self._info: self._info = self.db.get("SELECT * FROM mirrors WHERE id=%s", self.id) @@ -310,7 +313,7 @@ class Mirror(object): state, self.id) # Reload changed settings - self.reload() + self.reload(force=True) def check(self): logging.info("Running check for mirror %s" % self.hostname) @@ -356,7 +359,7 @@ class Mirror(object): timestamp, self.id) # Reload changed settings - self.reload() + self.reload(force=True) self.check_state() -- 2.47.3