summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sqlalchemy')
-rw-r--r--lib/sqlalchemy/dialects/oracle/cx_oracle.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/sqlalchemy/dialects/oracle/cx_oracle.py b/lib/sqlalchemy/dialects/oracle/cx_oracle.py
index 24655ee1b..5f07e869e 100644
--- a/lib/sqlalchemy/dialects/oracle/cx_oracle.py
+++ b/lib/sqlalchemy/dialects/oracle/cx_oracle.py
@@ -817,10 +817,13 @@ class OracleDialect_cx_oracle(OracleDialect):
def is_disconnect(self, e, connection, cursor):
error, = e.args
- if isinstance(e, (
- self.dbapi.InterfaceError, self.dbapi.DatabaseError)):
- return "not connected" in str(e)
- elif hasattr(error, 'code'):
+ if isinstance(
+ e,
+ (self.dbapi.InterfaceError, self.dbapi.DatabaseError)
+ ) and "not connected" in str(e):
+ return True
+
+ if hasattr(error, 'code'):
# ORA-00028: your session has been killed
# ORA-03114: not connected to ORACLE
# ORA-03113: end-of-file on communication channel