diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-08-28 16:06:10 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-08-29 00:12:29 +0100 |
commit | 5709efc2ff1e36529bd28f49cd093ccfa7abff7f (patch) | |
tree | e99a0a42cab270b2476366271aaff8447c3ffd25 /lib/prserv/db.py | |
parent | 85fed8acc3af3e15bf119db2f51c486a9de3646b (diff) | |
download | bitbake-5709efc2ff1e36529bd28f49cd093ccfa7abff7f.tar.gz |
prserv/db: Threading fixes
Enabling threading for the PRServer causes a number of issues. Firstly is
the obtuse error:
sqlite3.InterfaceError: Error binding parameter 0 - probably unsupported type
which is due to the class not being derived from object. See:
http://docs.python.org/2/library/sqlite3.html#registering-an-adapter-callable
Secondly, we want to enable multithreadded access to the database so we do this
when we open it. This opens the way up to multithreading the PR server.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/prserv/db.py')
-rw-r--r-- | lib/prserv/db.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/prserv/db.py b/lib/prserv/db.py index 9d8e9db9f..7d74327c5 100644 --- a/lib/prserv/db.py +++ b/lib/prserv/db.py @@ -14,7 +14,7 @@ sqlversion = sqlite3.sqlite_version_info if sqlversion[0] < 3 or (sqlversion[0] == 3 and sqlversion[1] < 3): raise Exception("sqlite3 version 3.3.0 or later is required.") -class PRTable(): +class PRTable(object): def __init__(self, conn, table, nohist): self.conn = conn self.nohist = nohist @@ -223,7 +223,7 @@ class PRData(object): except OSError as e: if e.errno != errno.EEXIST: raise e - self.connection=sqlite3.connect(self.filename, isolation_level="DEFERRED") + self.connection=sqlite3.connect(self.filename, isolation_level="DEFERRED", check_same_thread = False) self.connection.row_factory=sqlite3.Row self._tables={} |