From 42cf8ea91d2604a3b705e9f8eccbaf5e212ca572 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Tue, 16 Jan 2018 13:02:17 -0500 Subject: [PATCH] Add 10054 to ODBC / SQL Server disconnect codes Change-Id: I6e2518232608f47515b96984b4b7a41b8385975a Fixes: #4164 --- doc/build/changelog/unreleased_12/4164.rst | 7 +++++++ lib/sqlalchemy/dialects/mssql/pyodbc.py | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 doc/build/changelog/unreleased_12/4164.rst diff --git a/doc/build/changelog/unreleased_12/4164.rst b/doc/build/changelog/unreleased_12/4164.rst new file mode 100644 index 0000000000..7ea69df273 --- /dev/null +++ b/doc/build/changelog/unreleased_12/4164.rst @@ -0,0 +1,7 @@ +.. change:: + :tags: bug, mssql + :tickets: 4164 + + Added ODBC error code 10054 to the list of error + codes that count as a disconnect for ODBC / MSSQL server. + diff --git a/lib/sqlalchemy/dialects/mssql/pyodbc.py b/lib/sqlalchemy/dialects/mssql/pyodbc.py index c66c45ec68..b8f7bef36b 100644 --- a/lib/sqlalchemy/dialects/mssql/pyodbc.py +++ b/lib/sqlalchemy/dialects/mssql/pyodbc.py @@ -299,7 +299,8 @@ class MSDialect_pyodbc(PyODBCConnector, MSDialect): if isinstance(e, self.dbapi.Error): for code in ( '08S01', '01002', '08003', '08007', - '08S02', '08001', 'HYT00', 'HY010'): + '08S02', '08001', 'HYT00', 'HY010', + '10054'): if code in str(e): return True return super(MSDialect_pyodbc, self).is_disconnect( -- 2.47.2