我们正在通过ADO.NET异步BEGINEXecuteNonQuery运行一个长时间运行的SP,SP运行了12个小时,这个sp执行从一个表到另一个表的批量插入,大约有6,000,000条记录。
在执行批量插入时,当我检查状态时,Query转到挂起模式一段时间(我认为它正在等待IO资源),然后返回到运行模式,再等待15分钟后,如果我检查状态,我看到SPID有“rollback”不在running状态。我还没有取消事务,不确定为什么状态显示为has RollBack,不确定回滚状态的原因。
以前有没有人遇到过同样的问题?如何处理这种情况?
发布于 2014-09-05 04:07:46
您的SP可能会返回一个错误,该错误可能会告诉您出了什么问题。
使用BeginExecuteNonQuery(AsyncCallback, Object)检查查询结果:
SqlCommand.BeginExecuteNonQuery Method
您还可以分析服务器日志:
https://stackoverflow.com/questions/25673812
复制相似问题