Jac*_*ues 6 sql sql-server-profiler sql-server-2008 database-deadlocks
有人可以帮我阅读/理解这个死锁图吗?
我不明白为什么进程75要求锁定他已经锁定的对象?
根据一篇博客文章,我发现"Exchange事件"的存在表明您的问题的来源可能是您查询中的并行性.
上面的文章更详细,但是妙语如下:
解决方法#1:添加索引或改进查询以消除对并行性的需求.在大多数情况下,在查询中使用并行性表示您具有适当索引不支持的非常大的扫描,排序或连接.如果您调整查询,通常会发现最终得到的更快更有效的计划不使用并行性,因此不会遇到此类问题.当然,在某些查询中(特别是DSS/OLAP类型查询),可能很难消除所有大型扫描.
解决方法#2: 在查询结束时使用"OPTION(MAXDOP 1)"查询提示强制执行单线程执行.如果无法修改查询,则可以使用计划指南将提示应用于任何查询.
您可能想尝试这个以查看是否有任何改进.