我们从一个sql select语句中收到此异常。我在sysmessages表中找不到错误3617。 .Class是25.没有消息。
我们知道我们在Sql server 2005服务器上获取它。
我知道这是一个连接多个表并使用CLR组合和排序某些数据的大型选择。
可能导致此错误的原因或我可以找出错误代码的含义?
答案 0 :(得分:2)
看看这个:Discussion on Microsoft forums,请看帖子中最后一位主持人的回答。
已更新 :(在论坛帖子中添加了文字):
错误代码3617是系统关注的问题。系统会引起注意 当客户端取消正在运行的请求时。这可能发生在 命令超时例如。此错误通常不会发送到 然而,客户。
有一种特殊情况,您可能会遇到这种情况。 重新使用池连接时,第一个出站请求将发送 请求上的特殊位标志告诉服务器重置 执行请求之前的连接状态。这个位导致了 服务器首先清除连接状态,然后执行命令。如果 您的SQL Server负载很重,此位已设置,并且需要 很长一段时间重置连接状态,客户端可能会超时和 发送系统注意。这会导致重置连接 被取消,在这种情况下,您可以看到发送给客户的3617。
我们最近在当前版本中强化了此代码以避免发送 返回此特定错误代码,因为错误本质上是虚假的 (基于时间,您可能会或可能不会收到此错误)。无论如何,你 可以认为此错误相当于:“发生严重错误 当前命令。结果(如果有的话)应该被丢弃。手术 被用户取消。“
要验证是否存在此问题,请检查SQL错误日志以查找错误 如下所示:
spid51在尝试重用SPID 51的会话时请求了任务中止,SPID 51已重置为连接池。会议 将被终止。