]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
Recognize more Firebird disconnection cases, fixing #1646 on 0.5.x
authorLele Gaifax <lele@metapensiero.it>
Tue, 29 Dec 2009 11:05:55 +0000 (11:05 +0000)
committerLele Gaifax <lele@metapensiero.it>
Tue, 29 Dec 2009 11:05:55 +0000 (11:05 +0000)
lib/sqlalchemy/databases/firebird.py

index 9a742cae09ec773854c42f87a961505a2f122c85..d61e8092bb3ce637edd994b1a5c693b4cf200706 100644 (file)
@@ -394,11 +394,10 @@ class FBDialect(default.DefaultDialect):
             return False
 
     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