2014-09-04 22 views
0

我们通过ADO.NET异步BEGINEXecuteNonQuery运行一个长时间运行的SP,SP运行了12小时,此sp执行从一个表到另一个表的大约6,00,00,000条记录的批量插入。事务自动进行回滚

当我检查状态时执行批量插入时,Query进入挂起模式一段时间(我认为它正在等待IO资源)并返回到运行模式,在等待另一个时间后返回暂停一段时间分钟,如果我检查状态,我看到SPID有“RollBack”不在RUNNING状态,我没有取消事务处理,也不知道为什么状态显示有回滚,不确定回滚状态的原因是SPID。

任何人以前面对同样的问题?如何处理这种情况?

+0

DBCC INPUTBUFFER(spid)会告诉你从客户端发送到SQL Server的最后一条消息。你可以尝试运行带有输出消息的SSMS中的SP吗? – nshah 2014-09-04 19:49:03

回答