sqlalchemy PymSql“;“对等端重置连接”;恢复
我正在运行一个cherrypy Web服务,想知道通过sqlalchemy从pymssql连接的“对等重设连接”恢复的最佳选项是什么。现在我必须重新启动Web服务。这似乎是pymssql的is_disconnect()方法中的一个错误,它忽略TCP连接和超时故障,使光标处于不愉快的状态;看见现在,您可以将monkey patch设置为:sqlalchemy PymSql“;“对等端重置连接”;恢复,sqlalchemy,cherrypy,pymssql,Sqlalchemy,Cherrypy,Pymssql,我正在运行一个cherrypy Web服务,想知道通过sqlalchemy从pymssql连接的“对等重设连接”恢复的最佳选项是什么。现在我必须重新启动Web服务。这似乎是pymssql的is_disconnect()方法中的一个错误,它忽略TCP连接和超时故障,使光标处于不愉快的状态;看见现在,您可以将monkey patch设置为: from sqlalchemy.dialects.mssql import pymssql def is_disconnect(self, e): f
from sqlalchemy.dialects.mssql import pymssql
def is_disconnect(self, e):
for msg in (
"20003",
"20004",
"Error 10054",
"Not connected to any MS SQL server",
"Connection is closed"
):
if msg in str(e):
return True
else:
return False
pymssql.MSDialect_pymssql.is_disconnect = is_disconnect