我的SQL Server 2008 R2中有一个非常复杂的存储过程,它将大量数据插入到数据库的多个表中。
此过程的副本在其他几台服务器上运行正常。我通常在服务器代理中使用一个作业来运行该过程,但是当我在我的开发服务器上执行此操作时,作业失败,在日志中显示代码片段,但没有其他内容。
当我在作业外部执行存储过程时,活动监视器将进程显示为任务状态:“已暂停”,命令:“等待命令”和waittype在“IO_Completion”,“PAGEIOLatch_SH”和空白之间交替。
This page表明可能存在内存分配的问题,但是磁盘上仍有9gb写入数据和日志(不多,但应该足够了)。
有人知道IO_Completion在执行存储过程的上下文中意味着什么吗?
答案 0 :(得分:0)
当我取消正在运行的存储过程时,它确实打印了一个容易解决的错误。似乎缺少内存阻止了服务器正确返回错误,导致它陷入“等待命令”等待状态。