【发布时间】:2012-12-28 06:19:14
【问题描述】:
有时,我的 Web 应用程序在尝试执行特定存储过程时会引发超时异常。从那一刻起,存储过程将永远不会再次执行,直到我重新启动数据库服务器。
奇怪的是,我可以在SQL Server Management studio中手动执行存储过程,而且执行时间是正确的(大约0.2秒)。
但是如果从网络服务器发出相同的确切调用...超时。这怎么可能?
我正在使用 SQL Server 2012,我正在使用 Linq2Sql 在我的代码中映射存储过程。
附加信息:我已尝试运行此博客文章中的“检测阻塞”sql:http://blog.sqlauthority.com/2010/10/06/sql-server-quickest-way-to-identify-blocking-query-and-resolution-dirty-solution/,但未返回任何行。
【问题讨论】:
-
发生时还有其他具体情况吗?例如,也许它只在调试时发生?
-
不,当没有进程连接到调试器时也会发生这种情况。我在我的机器上运行 IIS(Windows 7)。
-
你在使用事务吗?
-
不在任何对阻塞的查询感兴趣的表上。顺便说一句,如果事务是问题,我不应该也无法从管理工作室执行查询吗?
-
你能发布SP定义吗?也许你使用
LINQ to SQL的方式?
标签: asp.net sql-server timeout