Lock:Deadlock Chain (Ereignisklasse)

Gilt für:SQL Server

Die Lock:Deadlock Chain-Ereignisklasse wird für jeden an einem Deadlock Beteiligten erstellt.

Verwenden Sie die Lock:Deadlock Chain-Ereignisklasse, um zu überwachen, wann Deadlockbedingungen auftreten. Diese Informationen sind nützlich, wenn ermittelt werden soll, ob Deadlocks eine deutliche Auswirkung auf die Leistung der Anwendung haben und welche Objekte daran beteiligt sind. Sie können den Anwendungscode, der diese Objekte ändert, untersuchen, um festzustellen, ob die Deadlocks durch Änderungen minimiert werden können.

Datenspalten der Lock:Deadlock Chain-Ereignisklasse

Datenspaltenname Datentyp BESCHREIBUNG Column ID Filterbar
BinaryData image ID der LOCK-Ressource. 2 Ja
DatabaseID int ID der Datenbank, zu der diese Ressource gehört. SQL Server Profiler zeigt den Namen der Datenbank an, wenn die ServerName-Datenspalte in der Ablaufverfolgung aufgezeichnet wird und der Server verfügbar ist. Der Wert für eine Datenbank kann mithilfe der DB_ID-Funktion ermittelt werden. 3 Ja
DatabaseName nvarchar Name der Datenbank, zu der die Ressource gehört. 35 Ja
EventClass int Ereignistyp = 59. 27 Nein
EventSequence int Sequenz eines bestimmten Ereignisses innerhalb der Anforderung. 51 Nein
EventSubClass int Der Typ der Ereignisunterklasse.

101 = Lock-Ressourcentyp

102 = Exchange-Ressourcentyp
21 Ja
IntegerData int Deadlocknummer. Die Nummern werden beginnend mit 0 zugewiesen, wenn der Server gestartet wird, und werden bei jedem Deadlock erhöht. 25 Ja
IntegerData2 int Nur für Informationszwecke identifiziert. Wird nicht unterstützt. Zukünftige Kompatibilität wird nicht sichergestellt. 55 Ja
IsSystem int Gibt an, ob das Ereignis bei einem Systemprozess oder einem Benutzerprozess aufgetreten ist. 1 = System, 0 = Benutzer. 60 Ja
LoginSid image Sicherheits-ID (SID) des angemeldeten Benutzers. Diese Informationen finden Sie in der sys.server_principals-Katalogsicht. Die SID ist für jede Anmeldung beim Server eindeutig. 41 Ja
Mode int 0 = NULL - Kompatibel mit allen anderen Sperrmodi (LCK_M_NL)

1 = Schemastabilitätssperre (LCK_M_SCH_S)

2 = Schemaänderungssperre (LCK_M_SCH_M)

3 = Freigegebene Sperre (LCK_M_S)

4 = Updatesperre (LCK_M_U)

5 = Exklusive Sperre (LCK_M_X)

6 = Beabsichtigte freigegebene Sperre (LCK_M_IS)

7 = Beabsichtigte Updatesperre (LCK_M_IU)

8 = Beabsichtigte exklusive Sperre (LCK_M_IX)

9 = Freigegebene Sperre mit beabsichtigter Updatesperre (LCK_M_SIU)

10 = Freigegebene Sperre mit beabsichtigter exklusiver Sperre (LCK_M_SIX)

11 = Updatesperre mit beabsichtigter exklusiver Sperre (LCK_M_UIX)

12 = Massenupdatesperre (LCK_M_BU)

13 = Freigegebene Sperren für Schlüsselbereich und Ressource (LCK_M_RS_S)

14 = Freigegebene Sperre für Schlüsselbereich und Updatesperre für Ressource (LCK_M_RS_U)

15 = Einfügungssperre für Schlüsselbereich und NULL-Sperre für Ressource (LCK_M_RI_NL)

16 = Einfügungssperre für Schlüsselbereich und freigegebene Ressourcensperre (LCK_M_RI_S)

17 = Einfügungssperre für Schlüsselbereich und Updatesperre (LCK_M_RI_U)

18 = Einfügungssperre für Schlüsselbereich und exklusive Ressourcensperre (LCK_M_RI_X)

19 = Exklusive Sperren für Schlüsselbereich und freigegebene Ressource (LCK_M_RX_S)

20 = Exklusive Sperren für Schlüsselbereich und Update (LCK_M_RX_U)

21 = Exklusive Sperren für Schlüsselbereich und Ressource (LCK_M_RX_X)
32 Ja
ObjectID int ID des gesperrten Objekts, soweit verfügbar und anwendbar. 22 Ja
ObjectID2 bigint Die ID des verbundenen Objekts bzw. der verbundenen Entität, soweit verfügbar und anwendbar. 56 Ja
OwnerID int 1 = TRANSACTION

2 = CURSOR

3 = SESSION

4 = SHARED_TRANSACTION_WORKSPACE

5 = EXCLUSIVE_TRANSACTION_WORKSPACE
58 Ja
RequestID int Die ID der Anforderung, die die Anweisung enthält. 49 Ja
ServerName nvarchar Name der SQL Server -Instanz, für die eine Ablaufverfolgung ausgeführt wird. 26 Nein
SessionLoginName nvarchar Der Anmeldename des Benutzers, der die Sitzung gestartet hat. Wenn Sie beispielsweise mithilfe von Login1 eine Verbindung mit SQL Server herstellen und eine Anweisung als Login2 ausführen, zeigt SessionLoginName den Wert Login1 an und LoginName den Wert Login2. Diese Spalte zeigt die Windows-Anmeldenamen für SQL Server und Microsoft an. 64 Ja
SPID int Die ID der Sitzung, in der das Ereignis aufgetreten ist. 12 Ja
StartTime datetime Zeitpunkt, zu dem das Ereignis begonnen hat (falls vorhanden). 14 Ja
TextData ntext Vom Ressourcentyp abhängiger Textwert. 1 Ja
TransactionID bigint Die vom System zugewiesene ID der Transaktion. 4 Ja
type int 1 = NULL_RESOURCE

2 = DATABASE

3 = FILE

5 = OBJECT

6 = PAGE

7 = KEY

8 = EXTENT

9 = RID

10 = APPLICATION

11 = METADATA

12 = AUTONAMEDB

13 = HOBT

14 = ALLOCATION_UNIT
57 Ja

Weitere Informationen

sp_trace_setevent (Transact-SQL)
sys.dm_tran_locks (Transact-SQL)