Repository: incubator-ariatosca
Updated Branches:
  refs/heads/ARIA-213-Sporadic-tests-failures-over-locked-database-issue 
[created] a27d7a4b8


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/a27d7a4b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/tree/a27d7a4b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/diff/a27d7a4b

Branch: refs/heads/ARIA-213-Sporadic-tests-failures-over-locked-database-issue
Commit: a27d7a4b85eb69d664b93137ac06144df5b1b24b
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:49:03 2017 +0300

----------------------------------------------------------------------
 aria/storage/sql_mapi.py | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/a27d7a4b/aria/storage/sql_mapi.py
----------------------------------------------------------------------
diff --git a/aria/storage/sql_mapi.py b/aria/storage/sql_mapi.py
index 68d0ff6..d9b8d70 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,21 @@ 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)
+    event.listen(engine, 'begin', do_begin)
+
     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.

Reply via email to