From 535a4a77bf2415a292a6aa818df7bb3958569f67 Mon Sep 17 00:00:00 2001 From: Lele Gaifax Date: Sun, 27 Dec 2009 18:56:27 +0000 Subject: [PATCH] Recognize more Firebird disconnection cases, fixing #1646 on trunk --- lib/sqlalchemy/dialects/firebird/kinterbasdb.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/lib/sqlalchemy/dialects/firebird/kinterbasdb.py b/lib/sqlalchemy/dialects/firebird/kinterbasdb.py index c804af05f1..6f79402075 100644 --- a/lib/sqlalchemy/dialects/firebird/kinterbasdb.py +++ b/lib/sqlalchemy/dialects/firebird/kinterbasdb.py @@ -90,11 +90,10 @@ class Firebird_kinterbasdb(FBDialect): return tuple([int(x) for x in m.group(5, 6, 4)]) def is_disconnect(self, e): - if isinstance(e, self.dbapi.OperationalError): - return 'Unable to complete network request to host' in str(e) - elif isinstance(e, self.dbapi.ProgrammingError): + if isinstance(e, (self.dbapi.OperationalError, self.dbapi.ProgrammingError)): msg = str(e) - return ('Invalid connection state' in msg or + return ('Unable to complete network request to host' in msg or + 'Invalid connection state' in msg or 'Invalid cursor state' in msg) else: return False -- 2.47.3