我们的应用程序当前在运行某些存储过程时遇到问题,因为它们似乎对自己进行了排他锁来编译存储过程,因此无法运行并超时。
这是针对Sql Server 2016群集企业版的。我们尝试对群集进行故障转移,但是问题又回来了。 通过在存储过程中使用WITH RECOMPILE选项,我们可以减少问题的发生,但是我看不出为什么这样做有帮助。 只是执行sp_recompile并没有帮助。
这些存储过程已经存在多年并且运行非常频繁,因此我们不确定为什么该问题在一天中开始出现。其中一个存储过程只是一个简单的更新语句,例如:
更新BigTable设置xmlColumn = @XmlDocument,其中ID = @ID
这些存储过程通常在几毫秒内运行,但是现在它们在30秒后就会超时。