From b0d574dfb044b64772fe229cfc9c8f6337498b36 Mon Sep 17 00:00:00 2001 From: shortcutme Date: Wed, 24 May 2017 10:40:10 +0200 Subject: [PATCH] Rev2089, Close the transaction on failed peer db save --- plugins/PeerDb/PeerDbPlugin.py | 16 ++++++++++------ src/Config.py | 2 +- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/plugins/PeerDb/PeerDbPlugin.py b/plugins/PeerDb/PeerDbPlugin.py index 858b22ea..72e585ee 100644 --- a/plugins/PeerDb/PeerDbPlugin.py +++ b/plugins/PeerDb/PeerDbPlugin.py @@ -73,12 +73,16 @@ class ContentDbPlugin(object): site_id = self.site_ids.get(site.address) cur = self.getCursor() cur.execute("BEGIN") - self.execute("DELETE FROM peer WHERE site_id = :site_id", {"site_id": site_id}) - self.cur.cursor.executemany( - "INSERT INTO peer (site_id, address, port, hashfield, time_added) VALUES (?, ?, ?, ?, ?)", - self.iteratePeers(site) - ) - cur.execute("END") + try: + self.execute("DELETE FROM peer WHERE site_id = :site_id", {"site_id": site_id}) + self.cur.cursor.executemany( + "INSERT INTO peer (site_id, address, port, hashfield, time_added) VALUES (?, ?, ?, ?, ?)", + self.iteratePeers(site) + ) + except Exception, err: + site.log.error("Save peer error: %s" % err) + finally: + cur.execute("END") site.log.debug("Peers saved in %.3fs" % (time.time() - s)) def initSite(self, site): diff --git a/src/Config.py b/src/Config.py index dddc2356..84e7b803 100644 --- a/src/Config.py +++ b/src/Config.py @@ -10,7 +10,7 @@ class Config(object): def __init__(self, argv): self.version = "0.5.5" - self.rev = 2088 + self.rev = 2089 self.argv = argv self.action = None self.config_file = "zeronet.conf"