Sdílet prostřednictvím


Lock:Deadlock Chain – událostní třída

Platí na: SQL Server 2016 (13.x) a novější verze Azure SQL DatabaseAzure SQL Managed InstanceSQL database in Microsoft Fabric

Třída událostí Lock:Deadlock Chain je vytvořena pro každého účastníka v patové situaci.

Použijte třídu událostí Lock:Deadlock Chain ke sledování, kdy vznikají podmínky zablokování. Tyto informace jsou užitečné pro určení, zda zablokování výrazně ovlivňuje výkon vaší aplikace a které objekty jsou zapojeny. Můžete prozkoumat aplikační kód, který tyto objekty upravuje, abyste zjistili, zda lze provést změny k minimalizaci patových situací.

Sloupce datových tříd událostí Lock:Deadlock

Název datového sloupce Datový typ Description ID sloupce Filtrovatelný
BinaryData image Zamkněte identifikátor zdroje. 2 Ano
DatabaseID int ID databáze, do které tento zdroj patří. SQL Server Profiler zobrazí název databáze, pokud je datový sloupec ServerName zachycen v trasování a server je k dispozici. Pomocí funkce DB_ID určete hodnotu databáze. 3 Ano
DatabaseName nvarchar Název databáze, do které zdroj patří. 35 Ano
EventClass int Typ události = 59. 27 Ne
Sekvence událostí int Posloupnost dané události v rámci požadavku 51 Ne
EventSubClass int Typ podtřídy události.

101=Zámek typu zdroje

102=Výměna typu zdroje
21 Ano
IntegerData int Číslo patové situace. Čísla jsou přiřazena začínající 0 při spuštění serveru a postupně se zvyšují při každém zablokování. 25 Ano
IntegerData2 int Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena. 55 Ano
IsSystem int Určuje, jestli došlo k události v systémovém procesu nebo uživatelském procesu. 1 = systém, 0 = uživatel. 60 Ano
LoginSid image Identifikační číslo zabezpečení (SID) přihlášeného uživatele. Tyto informace najdete v zobrazení sys.server_principals katalogu. Každý identifikátor SID je jedinečný pro každé přihlášení na serveru. 41 Ano
Mode int 0=NULL - Kompatibilní se všemi ostatními režimy zámku (LCK_M_NL)

1=Stabilitní zámek schématu (LCK_M_SCH_S)

2=Zámek modifikace schématu (LCK_M_SCH_M)

3=Sdílený zámek (LCK_M_S)

4=Aktualizovat zámek (LCK_M_U)

5=Exkluzivní zámek (LCK_M_X)

6=Záměr sdílený zámek (LCK_M_IS)

7=Zámek aktualizace záměru (LCK_M_IU)

8=Zámek výhradně záměrem (LCK_M_IX)

9=Sdíleno s úmyslem aktualizovat (LCK_M_SIU)

10=Exkluzivně sdíleno s úmyslem (LCK_M_SIX)

11=Aktualizace s exkluzivním záměrem (LCK_M_UIX)

12=Hromadný aktualizační zámek (LCK_M_BU)

13=Sdílený/sdílený rozsah klíčů (LCK_M_RS_S)

14=Sdílení rozsahu klíčů/aktualizace (LCK_M_RS_U)

15=Vložení rozsahu klíčů NULL (LCK_M_RI_NL)

16=Sdílené vložení rozsahu klíčů (LCK_M_RI_S)

17=Aktualizace vložení rozsahu klíčů (LCK_M_RI_U)

18=Insert Range Exclusive (LCK_M_RI_X)

19=Sdílené klíčové rozsahy (LCK_M_RX_S)

20=Exkluzivní aktualizace klíčového rozsahu (LCK_M_RX_U)

21=Exkluzivní pro klíčovou řadu exkluzivně (LCK_M_RX_X)
32 Ano
Identifikátor objektu (ObjectID) int ID objektu, který byl zamčen, pokud je k dispozici a použitelné. 22 Ano
ObjectID2 bigint ID souvisejícího objektu nebo entity, pokud je k dispozici a relevantní. 56 Ano
OwnerID int 1=TRANSAKCE

2=KURZOR

3=SEZENÍ

4=SHARED_TRANSACTION_WORKSPACE

5=EXCLUSIVE_TRANSACTION_WORKSPACE
58 Ano
ID požadavku int ID požadavku obsahujícího příkaz. 49 Ano
Název serveru nvarchar Název instance systému SQL Server, která se trasuje. 26 Ne
SessionLoginName nvarchar Přihlašovací jméno uživatele, který relaci pochází. Například pokud se připojíte ke SQL Serveru pomocí Login1 a vykonáte příkaz jako Login2, SessionLoginName ukáže Login1 a LoginName Login2. Tento sloupec zobrazuje přihlášení jak pro SQL Server, tak pro Microsoft Windows. 64 Ano
SPID int ID relace, na které došlo k události. 12 Ano
StartTime datetime Čas, kdy událost začala, pokud je k dispozici. 14 Ano
Textová data ntext Textová hodnota závisí na typu zdroje. 1 Ano
TransactionID bigint ID transakce přiřazené systémem. 4 Ano
Typ int 1=NULL_RESOURCE

2=DATABÁZE

3=SOUBOR

5=OBJEKT

6=PAGE

7=KLÍČ

8=ROZSAH

9=RID

10=APLIKACE

11=METADATA

12=AUTONAMEDB

13=HOBT

14=ALLOCATION_UNIT
57 Ano

Viz také

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