SQL Server-Assertion-Fehler, wenn Sie versuchen, eine Bulk Insert oder BCP-Anweisung ausführen: "<loglock.cpp>, Line = 807 fehlgeschlagen Behauptung =" Ergebnis LCK_OK == ""</loglock.cpp>

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 2700641 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Problembeschreibung

Betrachten Sie das folgende Szenario:
  • Server a und Server B sind Microsoft SQL Server 2008 oder SQL Server 2008 R2 ausgeführt.
  • Sie richten Sie die Datenbankspiegelung zwischen Server A und Server B.
  • Sie führen Sie eine Anweisung BULK INSERT oder BCP für die Prinzipaldatenbank.

    Hinweis Standardmäßig ist die Option ' CHECK_CONSTRAINTS ' festgelegt, auf aus, wenn Sie eine BULK INSERT oder BCP-Anweisung ausführen.
  • Die Datenbankspiegelung wird unterbrochen, und die Datenbankspiegelungssitzung wechselt der Status "angehalten".
In diesem Szenario tritt auf, eine Assertion auf dem Spiegelserver. Aus diesem Grund wird eine Minidump-Datei in dem Ordner SQL Server erstellt. Außerdem sehen Sie die folgenden Fehler im Fehlerprotokoll SQL Server auf dem Spiegelungs-Server:

Datum Uhrzeit spid Verwenden 'dbghelp.dll' Version '4.0.5'
Datum Uhrzeit spid ** Abbild von Thread - Spid = 31, EG = 0x00000007F9B1C1A0
Datum Uhrzeit spid *** Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\LOG\SQLDump0001.txt

Datum Uhrzeit spid * *******************************************************************************

Datum Uhrzeit spid *
Datum Uhrzeit spid * BEGIN STACK DUMP:
Datum Uhrzeit spid * 01/04/12 ? 16: 46: 21 Spid 12100
Datum Uhrzeit spid *
Datum Uhrzeit spid Der Standort: loglock.cpp:807
Datum Uhrzeit spid * Ausdruck: == LCK_OK
Datum Uhrzeit spid * SPID: 31
Datum Uhrzeit spid * Prozess-ID: 2228

Datum Uhrzeit spid Fehler: 17066, Schweregrad: 16, Status: 1.

Datum Uhrzeit spid SQL Server-Assertion: Datei: <loglock.cpp>, Line = 807 fehlgeschlagen-Assertion = ' Ergebnis LCK_OK =='. Dieser Fehler möglicherweise im Zusammenhang mit dem Timing. Wenn der Fehler weiterhin auftritt, nachdem die Anweisung erneut ausführen, verwenden Sie DBCC CHECKDB die Datenbank für die strukturelle Integrität überprüft, oder starten Sie den Server, um sicherzustellen, dass die Datenstrukturen im Arbeitsspeicher nicht beschädigt sind.

</loglock.cpp>Datum Uhrzeit spid Fehler: 3624, Schweregrad: 20, State: 1.

Datum Uhrzeit spid Eine Assertion Systemüberprüfung ist fehlgeschlagen. Überprüfen Sie das SQL Server-Fehlerprotokoll auf Details. In der Regel wird ein Assertionsfehler durch eine Software-Fehler oder eine Datenbeschädigung verursacht. Um Beschädigungen der Datenbank zu überprüfen, sollten Sie in der Ausführung von DBCC CHECKDB. Wenn Sie zugestimmt, Dumps während Setup an Microsoft senden, wird ein kleines Speicherabbild an Microsoft gesendet. Ein Update möglicherweise von Microsoft in das neueste Service Pack oder ein QFE vom technischen Support zur Verfügung.

Datum Uhrzeit spid Fehler: 1454, Schweregrad: 16, Status: 1.

Datum Uhrzeit spid Die Datenbankspiegelung wird angehalten. Server-Instanz '<Instance name="">' aufgetreten Fehler 3624, Status 1, Schweregrad 20, wenn er als Spiegelung Partner für Datenbank '<database name="">' bestimmt war. Die Datenbankspiegelung Partner könnten versuchen, automatisch Fehler wiederherzustellen und die Spiegelungssitzung fortsetzen. Weitere Informationen finden Sie im Fehlerprotokoll nach zusätzlichen Fehlermeldungen. </database></Instance>


Hinweis Sie müssen erneut initialisieren, Datenbankspiegelung, um dieses Problem zu beheben.

Ursache

Dieses Problem tritt auf, weil die Kompatibilitätsinformationen Sperre im Transaktionsprotokoll der Prinzipaldatenbank nicht an den Spiegelserver übertragen wird.

Abhilfe

Um dieses Problem zu umgehen, führen Sie die BULK INSERT oder BCP-Anweisung für die Prinzipaldatenbank mit die Option CHECK_CONSTRAINTS.

Hinweis Die Option CHECK_CONSTRAINTS wird langsamer. Die Sperre jedoch assert, auf dem Spiegel Server tritt nicht auf.

Weitere Informationen

Während der BULK INSERT oder BCP-Operation deaktiviert die Option CHECK_CONSTRAINTS eine Kind-Transaktion. Diese untergeordneten-Transaktion verwendet wird, eine Sperre, die mit den übergeordneten Transaktionssperren kompatibel ist. Die Informationen zur Kompatibilität wird in das Transaktionslog der Prinzipaldatenbank gespeichert. Aus diesem Grund ist die untergeordnete Transaktion der Prinzipaldatenbank gewährt.

Diese Informationen zur Hardwarekompatibilität ist jedoch nicht an den Spiegelserver übertragen. Daher ist die untergeordnete Transaktion Sperranforderung nicht kompatibel mit den übergeordneten Transaktionssperren auf dem Spiegelserver. Dieses Szenario führt die Assert auf dem Spiegelserver.

Eigenschaften

Artikel-ID: 2700641 - Geändert am: Montag, 6. August 2012 - Version: 1.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 Enterprise
Keywords: 
kbsurveynew kbtshoot kbprb kbmt KB2700641 KbMtde
Maschinell übersetzter Artikel
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.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 2700641
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

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