[bitbake-devel] [PATCH] prserv: Use WAL mode

Richard Purdie richard.purdie at linuxfoundation.org
Wed Nov 5 16:58:13 UTC 2014


Ideally, we want the PR service to have minimal influence from 
queued disk IO. sqlite tends to be paranoid about data loss and 
locks/fsync calls. There is a "WAL mode" which changes the journalling
mechanism and would appear much better suited to our use case.

This patch therefore switches the database to what WAL mode. With this
change, write overhead appears significantly reduced.

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

diff --git a/bitbake/lib/prserv/db.py b/bitbake/lib/prserv/db.py
index 3bdc046..9d6d115 100644
--- a/bitbake/lib/prserv/db.py
+++ b/bitbake/lib/prserv/db.py
@@ -235,6 +235,7 @@ class PRData(object):
         self.connection=sqlite3.connect(self.filename, isolation_level="EXCLUSIVE", check_same_thread = False)
         self.connection.row_factory=sqlite3.Row
         self.connection.execute("pragma synchronous = off;")
+        self.connection.execute("PRAGMA journal_mode = WAL;")
         self._tables={}
 
     def __del__(self):





More information about the bitbake-devel mailing list