Update: Lesen einer Profiler-Ablaufverfolgung mit der:: Fn_trace_gettable-Funktion und SPID 1000 möglicherweise verursachen Fehler

Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.

325197
Dieser Artikel wurde archiviert. Er wird im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.
# FEHLER: 360090 (SHILOH_BUGS)
Problembeschreibung
Wenn Sie die : Fn_trace_gettable Funktion, um eine SQL Profiler-Ablaufverfolgung, eine Zugriffsverletzung oder verschiedene andere Fehlermeldungen auftreten, wenn alle folgenden Bedingungen erfüllt sind:
  • Die Ablaufverfolgungsdatei enthält 1000 Ereignisse für die Serverprozess-ID (SPID).
  • Das erste Ereignis für SPID 1000 kommt vor alle Ereignisse für SPIDS, die größer als 1000 sind.
  • Die Ablaufverfolgung erfasst eine oder mehrere der folgenden Spalten:
    • ServerName
    • NTUserName
    • NTDomainName
    • LoginName
    • LoginSid
    • ClientProcessID
    • Anwendungsname
    • HostName
Hier ist eine Beispielabfrage, die eine Zugriffsverletzung verursachen können, wenn alle Bedingungen in der Liste erfüllt sind:
select * from ::fn_trace_gettable(<trace_file>, 1)	
da der Fehler die Routine außerhalb der Grenzen eines Arrays zu schreiben, hat es die Möglichkeit, Datenstrukturen zu überschreiben, die von anderen Verbindungen verwendet werden; daher kann er diese Verbindungen zu verschiedenen Fehlerbedingungen auftreten.
Ursache
Die aufgeführten Ereignisse sind wiederholbare Ereignisse. Die Werte für jede der Spalten gemeldet entspricht immer dem für die Dauer der SPID-Verbindung. Eine Optimierung Stelle bei der Server nur diese Werte einmal sendet; danach es den Wert der wiederholte Spalte verweist.

Beim Lesen der Ablaufverfolgungsdatei :: Fn_trace_gettable muss einen Array mit diesen Werten aufrechterhalten, so dass Sie in das Resultset für alle späteren Zeilen erzeugt werden können. Ist die Größe dieses Arrays geändert Weise ein Fehler aufgetreten beim Verarbeiten eines Ereignisses für SPID 1000.

Lösung
Installieren Sie das neueste Service Pack für Microsoft SQL Server 2000, um dieses Problem zu beheben. Weitere Informationen finden Sie die folgende KB-Artikelnummer:
290211Info: Wie das aktuelle SQL Server 2000 Service Pack für
Hinweis : der folgende Hotfix wurde vor der Veröffentlichung von Microsoft SQL Server 2000 Service Pack 3.

Die englische Version dieses Updates weist die in der nachstehenden Tabelle aufgelisteten Dateiattribute (oder höher) auf. Die Datums- und Uhrzeitangaben für diese Dateien werden in Coordinated Universal Time () angegeben. Wenn Sie sich die Dateiinformationen ansehen, werden diese Angaben in die lokale Zeit konvertiert. Um die Differenz zwischen UTC und der Ortszeit zu ermitteln verwenden Sie die Registerkarte Zeitzone des Tools „ Datum und Uhrzeit in der Systemsteuerung.
   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     				
Hinweis : aufgrund von Dateiabhängigkeiten das aktuellste Update oder Feature, das die Dateien enthält, auch enthält eventuell zusätzliche Dateien.


Abhilfe
Öffnen Sie die Trace-Datei mit SQL Profiler. Wenn Sie die Ablaufverfolgung in einer Tabelle laden möchten, verwenden Sie die Speichern unter -Funktionalität. Um die Funktionalität Speichern unter im Menü Datei zu verwenden, klicken Sie auf Speichern unter , und klicken Sie dann auf Ablaufverfolgungstabelle .

Hinweis, wenn die Ablaufverfolgungsdatei SPIDS, die größer als 1023 sind enthält, Sie SQLServer 2000 Servicepack 1 oder höher, Version der Clienttools verwenden müssen:
272737Update: SQL Profiler zeigt Fehler beim Lesen von Ablaufverfolgungsdateien, die 1023 SPIDs Exceed
Status
Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.

Dieses Problem wurde erstmals in Microsoft SQL Server 2000 Service Pack 3 behoben.

Warnung: Dieser Artikel wurde automatisch übersetzt

Eigenschaften

Artikelnummer: 325197 – Letzte Überarbeitung: 01/17/2015 05:46:46 – Revision: 6.3

  • Microsoft SQL Server 2000 Standard Edition
  • kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbsqlserv2000sp3fix kbsqlserv2000presp3fix kbfix kbqfe kbbug kbpending KB325197 KbMtde
Feedback