From 20ed04af8423e8cc8184645a6c7c10125b41012e Mon Sep 17 00:00:00 2001 From: shortcutme Date: Sun, 4 Dec 2016 18:54:43 +0100 Subject: [PATCH] Also delete orphan sites from site_id cache --- src/Site/SiteManager.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/Site/SiteManager.py b/src/Site/SiteManager.py index ee22aa1b..6f35d13f 100644 --- a/src/Site/SiteManager.py +++ b/src/Site/SiteManager.py @@ -49,10 +49,16 @@ class SiteManager(object): self.log.debug("Removed site: %s" % address) # Remove orpan sites from contentdb - for row in ContentDb.getContentDb().execute("SELECT * FROM site"): - if row["address"] not in self.sites: - self.log.info("Deleting orphan site from content.db: %s" % row["address"]) - ContentDb.getContentDb().execute("DELETE FROM site WHERE ?", {"address": row["address"]}) + content_db = ContentDb.getContentDb() + for row in content_db.execute("SELECT * FROM site"): + address = row["address"] + if address not in self.sites: + self.log.info("Deleting orphan site from content.db: %s" % address) + content_db.execute("DELETE FROM site WHERE ?", {"address": address}) + if address in content_db.site_ids: + del content_db.site_ids[address] + if address in content_db.sites: + del content_db.sites[address] if added: self.log.debug("SiteManager added %s sites" % added)