From 8773f5c73ce5dd1919acf45270d3f027bf09f824 Mon Sep 17 00:00:00 2001 From: IlyaFaer Date: Mon, 23 Aug 2021 12:33:11 +0300 Subject: [PATCH 1/5] fix: rollback failed exception log --- .../sqlalchemy_spanner/sqlalchemy_spanner.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py b/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py index c68332e8..563054b7 100644 --- a/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py +++ b/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py @@ -798,13 +798,14 @@ def do_rollback(self, dbapi_connection): To prevent rollback exception, don't rollback committed/rolled back transactions. """ - if ( - not isinstance(dbapi_connection, spanner_dbapi.Connection) - and dbapi_connection.connection._transaction - and ( - dbapi_connection.connection._transaction.rolled_back - or dbapi_connection.connection._transaction.committed - ) + if isinstance(dbapi_connection, spanner_dbapi.Connection): + dbapi_connection = dbapi_connection + else: + dbapi_connection = dbapi_connection.connection + + if dbapi_connection.connection._transaction and ( + dbapi_connection.connection._transaction.rolled_back + or dbapi_connection.connection._transaction.committed ): pass else: From 161d88a6e9ce57438ddf7a420e309c97c92d8d16 Mon Sep 17 00:00:00 2001 From: IlyaFaer Date: Mon, 23 Aug 2021 12:36:18 +0300 Subject: [PATCH 2/5] fix --- google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py b/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py index 563054b7..8b19340d 100644 --- a/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py +++ b/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py @@ -803,9 +803,9 @@ def do_rollback(self, dbapi_connection): else: dbapi_connection = dbapi_connection.connection - if dbapi_connection.connection._transaction and ( - dbapi_connection.connection._transaction.rolled_back - or dbapi_connection.connection._transaction.committed + if dbapi_connection._transaction and ( + dbapi_connection._transaction.rolled_back + or dbapi_connection._transaction.committed ): pass else: From 0b1551de84d99293df5076ed1c4f1a4c381546f5 Mon Sep 17 00:00:00 2001 From: IlyaFaer Date: Mon, 23 Aug 2021 12:55:49 +0300 Subject: [PATCH 3/5] add pytz dependency --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 3852af3d..3d7ec026 100644 --- a/setup.py +++ b/setup.py @@ -19,7 +19,7 @@ name = "sqlalchemy-spanner" description = "SQLAlchemy dialect integrated into Cloud Spanner database" -dependencies = ["sqlalchemy>=1.1.13, <=1.3.23", "google-cloud-spanner>=3.3.0"] +dependencies = ["sqlalchemy>=1.1.13, <=1.3.23", "google-cloud-spanner>=3.3.0", "pytz"] extras = { "tracing": [ "opentelemetry-api >= 1.1.0", From 3f138c3fd0c5957ba5c846961bdf0d76ee4700c8 Mon Sep 17 00:00:00 2001 From: IlyaFaer Date: Wed, 25 Aug 2021 10:53:07 +0300 Subject: [PATCH 4/5] remove pitz --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 3d7ec026..3852af3d 100644 --- a/setup.py +++ b/setup.py @@ -19,7 +19,7 @@ name = "sqlalchemy-spanner" description = "SQLAlchemy dialect integrated into Cloud Spanner database" -dependencies = ["sqlalchemy>=1.1.13, <=1.3.23", "google-cloud-spanner>=3.3.0", "pytz"] +dependencies = ["sqlalchemy>=1.1.13, <=1.3.23", "google-cloud-spanner>=3.3.0"] extras = { "tracing": [ "opentelemetry-api >= 1.1.0", From a72344ec5e3049c6f50b7b12157a78868d30fa33 Mon Sep 17 00:00:00 2001 From: IlyaFaer Date: Wed, 1 Sep 2021 10:52:30 +0300 Subject: [PATCH 5/5] erase excess line --- google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py b/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py index 8b19340d..e929275b 100644 --- a/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py +++ b/google/cloud/sqlalchemy_spanner/sqlalchemy_spanner.py @@ -798,9 +798,7 @@ def do_rollback(self, dbapi_connection): To prevent rollback exception, don't rollback committed/rolled back transactions. """ - if isinstance(dbapi_connection, spanner_dbapi.Connection): - dbapi_connection = dbapi_connection - else: + if not isinstance(dbapi_connection, spanner_dbapi.Connection): dbapi_connection = dbapi_connection.connection if dbapi_connection._transaction and (