Repository: incubator-ariatosca Updated Branches: refs/heads/ARIA-213-Sporadic-tests-failures-over-locked-database-issue a27d7a4b8 -> f3ecea1f4 (forced update)
isolation level fix Project: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/commit/f3ecea1f Tree: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/tree/f3ecea1f Diff: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/diff/f3ecea1f Branch: refs/heads/ARIA-213-Sporadic-tests-failures-over-locked-database-issue Commit: f3ecea1f4d531d689c478b2ab69e9cb02e2007f7 Parents: fedfb0d Author: max-orlov <[email protected]> Authored: Wed Jun 7 11:49:03 2017 +0300 Committer: max-orlov <[email protected]> Committed: Wed Jun 7 11:53:03 2017 +0300 ---------------------------------------------------------------------- aria/storage/sql_mapi.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/f3ecea1f/aria/storage/sql_mapi.py ---------------------------------------------------------------------- diff --git a/aria/storage/sql_mapi.py b/aria/storage/sql_mapi.py index 68d0ff6..49876ee 100644 --- a/aria/storage/sql_mapi.py +++ b/aria/storage/sql_mapi.py @@ -21,6 +21,7 @@ import platform from sqlalchemy import ( create_engine, orm, + event ) from sqlalchemy.exc import SQLAlchemyError from sqlalchemy.orm.exc import StaleDataError @@ -405,13 +406,20 @@ def init_storage(base_dir, filename='db.sqlite'): path=os.path.join(base_dir, filename)) - engine = create_engine(uri, connect_args=dict(timeout=15)) + engine = create_engine(uri) + event.listen(engine, 'connect', do_connect) + session_factory = orm.sessionmaker(bind=engine) session = orm.scoped_session(session_factory=session_factory) return dict(engine=engine, session=session) +def do_connect(dbapi_connection, _): + dbapi_connection.isolation_level = None + + + class ListResult(list): """ a ListResult contains results about the requested items.
