summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/prserv
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/prserv')
-rw-r--r--bitbake/lib/prserv/db.py4
-rw-r--r--bitbake/lib/prserv/serv.py3
2 files changed, 6 insertions, 1 deletions
diff --git a/bitbake/lib/prserv/db.py b/bitbake/lib/prserv/db.py
index 559935544a..86eafe338c 100644
--- a/bitbake/lib/prserv/db.py
+++ b/bitbake/lib/prserv/db.py
@@ -43,6 +43,10 @@ class PRTable(object):
continue
raise exc
+ def sync(self):
+ self.conn.commit()
+ self._execute("BEGIN EXCLUSIVE TRANSACTION")
+
def _getValueHist(self, version, pkgarch, checksum):
data=self._execute("SELECT value FROM %s WHERE version=? AND pkgarch=? AND checksum=?;" % self.table,
(version, pkgarch, checksum))
diff --git a/bitbake/lib/prserv/serv.py b/bitbake/lib/prserv/serv.py
index a9c7ed104c..7864594bb6 100644
--- a/bitbake/lib/prserv/serv.py
+++ b/bitbake/lib/prserv/serv.py
@@ -74,7 +74,7 @@ class PRServer(SimpleXMLRPCServer):
except:
self.handle_error(request, client_address)
self.shutdown_request(request)
-
+ self.table.sync()
def process_request(self, request, client_address):
self.requestqueue.put((request, client_address))
@@ -120,6 +120,7 @@ class PRServer(SimpleXMLRPCServer):
while not self.quit:
self.handle_request()
+ self.table.sync()
logger.info("PRServer: stopping...")
self.server_close()
return