From 134b267ebbcbf7a7bc43915e204da776530911d4 Mon Sep 17 00:00:00 2001 From: Leonardo Sandoval Date: Wed, 23 Sep 2015 13:39:27 +0000 Subject: bitbake: prserv/serv: Close the DB connection out of class destructor When launching the PR server daemon, the PRData __del__ function was being called (no reason found yet) where the DB connection closed, thus following PR updates were not getting into the DB. This patch closes the connection explicitly, not relaying on the __del__ function execution. Closing the connection in turn causes all WAL file transactions to be moved into the database (checkpoint), thus effectively updating the database. [YOCTO #8215] (Bitbake rev: c1b4754f69003df1a83fafc1c80a9ef74400b6dd) Signed-off-by: Leonardo Sandoval Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- bitbake/lib/prserv/db.py | 2 +- bitbake/lib/prserv/serv.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bitbake/lib/prserv/db.py b/bitbake/lib/prserv/db.py index 437958013d..36c9f7b630 100644 --- a/bitbake/lib/prserv/db.py +++ b/bitbake/lib/prserv/db.py @@ -248,7 +248,7 @@ class PRData(object): self.connection.execute("PRAGMA journal_mode = WAL;") self._tables={} - def __del__(self): + def disconnect(self): self.connection.close() def __getitem__(self,tblname): diff --git a/bitbake/lib/prserv/serv.py b/bitbake/lib/prserv/serv.py index 3cb2e03dad..c557837b83 100644 --- a/bitbake/lib/prserv/serv.py +++ b/bitbake/lib/prserv/serv.py @@ -148,7 +148,7 @@ class PRServer(SimpleXMLRPCServer): while not self.quit: self.handle_request() self.handlerthread.join() - self.table.sync() + self.db.disconnect() logger.info("PRServer: stopping...") self.server_close() return -- cgit v1.2.3-54-g00ecf