我们正在对SQL2008中的events表运行一个非常小的delete操作,它会随机产生一个死锁。然而,我们不能按需重新创建它。delete语句最多支持2-5行。
从EMSaccountID = 'DELE10A‘的Administration_NET.dbo.tblEvents中删除
有什么想法吗?
发布于 2009-07-17 18:51:26
是自身的死锁还是另一条语句的死锁?
它可以是一个简单的reader/writer deadlock based on index access order,请参阅我的链接获取说明。如果EMSaccountID是非聚集索引,则很可能发生这种情况。
发布于 2009-07-17 18:50:18
运行:
SET SET SHOWPLAN_ALL ON然后你的删除,有一个表扫描吗?如果是这样,您就会遇到索引问题
发布于 2009-07-17 18:55:41
有多少不同类型的语句正在命中tblEvents表?有没有可能在delete的同时运行一条insert/update/select语句?您可以尝试通过在尝试某些删除操作的同时运行大量插入/更新/选择操作来重新创建问题。
https://stackoverflow.com/questions/1145024
复制相似问题