运行sp_who2时,我的一个SQL命令似乎正在阻塞,但正在等待“正在休眠”和“正在等待命令”的进程。这没有任何意义。
任何可能导致此问题的想法?我知道DELETE正在一个先前在表中插入了很多行的事务中运行,这可能是问题吗?
答案 0 :(得分:12)
您可能在SPID 98上有一个打开的事务。阻止的SPID不必是活动的
试试这个,查看open_tran列
SELECT
p1.SPID AS blockedSPID, p2.SPID AS blockingSPID, ...
FROM
master..sysprocesses p1
JOIN
master..sysprocesses p2 ON p1.blocked = p2.spid
继续,this script gives你打开交易,持续SQL和计划。
阅读KB 224453以获得良好的衡量标准
答案 1 :(得分:0)
如果不知道正在运行的SQL,就很难说。但是根据删除/插入方案,您是否可能已经启动了插入事务,然后您已经打开了另一个事务来删除一些插入的记录而不需要先处理以前的事务?
我以前见过这种问题,这就是它的表现方式。