FIX: 读取与一个事件探查器跟踪在:: fn_trace_gettable 功能和 $ SPID 1000 可能导致错误

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

症状

如果您使用该 : fn_trace_gettable 满足以下所有条件时,可能会出现函数,查看 SQL 事件探查器跟踪、 访问冲突或其他各种错误消息:
  • 跟踪文件包含的服务器进程 ID (SPID) 事件 1000年。
  • 第一个事件的 SPID 1000 早于大于 1000年的 SPID 的任何事件。
  • 跟踪捕获一个或多个以下列:
    • 服务器名
    • NTUserName
    • NTDomainName
    • LoginName
    • LoginSid
    • ClientProcessID
    • ApplicationName
    • 主机名
下面是示例查询可能会导致一个访问冲突的如果在列表中的所有条件都满足:
select * from ::fn_trace_gettable(<trace_file>, 1)	
bug 会导致超出界限的数组写入例程,因为它有可能会覆盖由其他连接使用的数据结构 ; 因此,它可能会导致这些连接遇到各种故障条件。

原因

列出的事件是可重复的事件。报告的每一列的始终是连接的相同的 SPID 的持续时间。一种优化是就地由此服务器将只发送这些值一次 ; 此后,它引用了重复的列的值。

读取跟踪文件时 :: fn_trace_gettable 必须维护这些值的数组,以便他们可以生产中的任何后续的行结果集。此数组调整大小的方式时出现错误时处理事件的 SPID 1000。

解决方案

若要解决此问题,获得最新的 service pack,对于 Microsoft SQL Server 2000。有关更多的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
290211INF: 如何获取最新的 SQL Server 2000 Service Pack
: Microsoft SQL Server 2000 Service Pack 3 的版本之前创建的以下修补程序。

此修复程序的英文版具有文件属性 (或更高版本) 下表中列出。其格式为协调通用时间 (UTC) 列出日期和时间对这些文件。 当您查看文件信息时,将转换为本地时间。若要 UTC 与本地时间之间的时差使用控制面板中的日期和时间工具中的 时区 选项卡。
   Date         Time   Version         Size             File name
   -----------------------------------------------------------------

   18-Jan-2002  04:45  2000.80.568.0      29,244 bytes  Dbmslpcn.dll     
   19-Nov-2002  19:50  2000.80.703.0   7,471,185 bytes  Sqlservr.exe     
   18-Jan-2002  04:45  2000.80.568.0      29,244 bytes  Ssmslpcn.dll     
				
注意: 由于文件相关性的最新的修补程序或功能,它包含该文件可能还包含其他文件。


替代方法

使用 SQL 事件探查器打开跟踪文件。如果要装载到表的跟踪,请使用 另存为 功能。若要使用 另存为 功能在 文件 菜单上的单击 另存为,然后单击以选中 跟踪表

请注意是否跟踪文件中包含大于 1023年的 SPID 有使用 SQL Server 2000 Service Pack 1,或更高版本,版本的客户端工具:
272737当 FIX: SQL 事件探查器错误时生成阅读超过 1023 spid 的跟踪文件

状态

Microsoft 已经确认这是在本文开头列出的 Microsoft 产品中的问题。

Microsoft SQL Server 2000 Service Pack 3 中,第一次已得到纠正此问题。

属性

文章编号: 325197 - 最后修改: 2005年9月27日 - 修订: 6.3
这篇文章中的信息适用于:
  • Microsoft SQL Server 2000 标准版
关键字:?
kbmt kbhotfixserver kbqfe kbsqlserv2000sp3fix kbsqlserv2000presp3fix kbfix kbqfe kbbug kbpending KB325197 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 325197
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