高端磁盘子系统可能发生错误 17883

文章翻译 文章翻译
文章编号: 810885 - 查看本文应用于的产品
错误号:363118 (SHILOH_BUGS)
展开全部 | 关闭全部

本文内容

症状

您可能会收到以下错误信息:
Error:17883, Severity:1, State:0
The Scheduler 0 appears to be hung.SPID 53, ECID 1, UMS Context 0x04069D90
在高端磁盘子系统中使用以下任一命令时,可能会收到此错误信息:
  • ALTER DATABASE ADD FILE
  • CREATE DATABASE
  • 文件的 AUTOGROW(显式或隐式)
17883 错误信息已添加到 SQL Server 2000 Service Pack 3 (SP3) 中。此错误信息描述 SQL Server 计划程序出现的问题情形。此错误信息表明某些资源没有适当地转交给 SQL Server 计划程序。此问题导致未转交的线程长时间运行,因此使该 SQL 计划程序中的其他线程无法运行。服务器也可能变得无法响应。 有关此错误的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
319892 已将新的并发和调度诊断添加到 SQL Server 中


注意:本文讨论的是有关 17883 错误信息的一个可能原因。本文所讨论的替代方法仅适用于本文中讨论的原因。

原因

其中一个原因可能是未转交的线程。
当您执行在“症状”一节中提到的任意操作时,SQL Server 将发出一个 WriteFile WinAPI 调用,然后检查写请求的结果。如果该操作返回的是挂起,SQL Server 将相应地转交该 SQL 计划程序。

但是,如果对物理驻留于高端磁盘子系统的大型文件执行任何操作,SQL Server 将发布一个写操作,磁盘子系统将立即完成该写操作。由于磁盘子系统很快地完成了该写操作,因此 SQL Server 将继续发布新的写请求,直到完成整个文件操作,从而在 SQL 计划程序中创建了一个未转交线程。如果 SQL 计划程序超过 60 秒没有转交,SQL Server 将生成 17883 错误信息。

要使此问题得以发生,文件大小必须非常大,以致于即使写操作完成的速度非常快,SQL Server 也继续在 60 秒后发布写请求,并且仍然无法完成该操作。

替代方法

没有直接的方法能够避免此问题。但是,您可以将在“症状”一节中提到的所有文件操作计划为在非高峰时段内进行,以使服务器不会受到在文件操作完成前已停止响应的 SQL Server 计划程序的影响。

解决方案

Service Pack 信息

要解决此问题,请获取 SQL Server 2000 最新的 Service Pack。有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
290211 如何获取最新的 SQL Server 2000 Service Pack

状态

Microsoft 已经确认这是在“适用于”一节中列出的 Microsoft 产品中存在的错误。 此错误已在 SQL Server 2000 Service Pack 4 中得到更正。

属性

文章编号: 810885 - 最后修改: 2005年9月5日 - 修订: 7.0
这篇文章中的信息适用于:
  • Microsoft SQL Server 2000 Service Pack 3
关键字:?
kbbug KB810885
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com