Condividi tramite


Classe di evento Lock:Deadlock Chain

Si applica a: SQL Server

La classe di evento Lock:Deadlock Chain viene generata per ogni partecipante a un deadlock.

Utilizzare la classe di evento Lock:Deadlock Chain per eseguire il monitoraggio delle condizioni di deadlock. In questo modo è possibile determinare se i deadlock stanno riducendo in maniera significativa le prestazioni dell'applicazione e individuare gli oggetti coinvolti. È possibile esaminare il codice dell'applicazione che modifica tali oggetti per verificare se possono essere apportate modifiche tese a ridurre al minimo i deadlock.

Colonne di dati della classe di evento Lock:Deadlock Chain

Nome colonna di dati Tipo di dati Descrizione ID colonna Filtrabile
BinaryData Immagine Identificatore della risorsa blocco. 2
DatabaseID int ID del database a cui appartiene questa risorsa. SQL Server Profiler visualizza il nome del database se la colonna di dati ServerName è acquisita nella traccia e il server è disponibile. Determinare il valore per un database utilizzando la funzione DB_ID. 3
DatabaseName nvarchar Nome del database a cui appartiene la risorsa. 35
EventClass int Tipo di evento = 59. 27 No
EventSequence int Sequenza di un determinato evento all'interno della richiesta. 51 No
EventSubClass int Tipo di sottoclasse di evento.

101 = Tipo di risorsa Lock

102 = Tipo di risorsa Exchange
21
IntegerData int Numero del deadlock. Dall'avvio del server viene assegnato un numero a partire da 0 che viene incrementato di un'unità per ogni deadlock. 25
IntegerData2 int Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future. 55
IsSystem int Indica se l'evento è stato generato per un processo di sistema o un processo utente. 1 = sistema, 0 = utente. 60
LoginSid Immagine ID di sicurezza (SID) dell'utente connesso. Queste informazioni sono disponibili nella vista del catalogo sys.server_principals. Il SID è univoco per ogni account di accesso nel server. 41
Modalità int 0=NULL - Compatibile con tutte le altre modalità di blocco (LCK_M_NL)

1=Blocco di stabilità dello schema (LCK_M_SCH_S)

1=Blocco di modifica dello schema (LCK_M_SCH_M)

3=Blocco condiviso (LCK_M_S)

4=Blocco di aggiornamento (LCK_M_U)

5=Blocco esclusivo (LCK_M_X)

6=Blocco condiviso preventivo (LCK_M_IS)

7=Blocco di aggiornamento preventivo (LCK_M_IU)

8=Blocco esclusivo preventivo (LCK_M_IX)

9=Condiviso-Preventivo-Aggiornamento (LCK_M_SIU)

10=Condiviso-Preventivo-Esclusivo (LCK_M_SIX)

10=Aggiornamento-Preventivo-Esclusivo (LCK_M_SIX)

12=Blocco aggiornamenti bulk (LCK_M_BU)

13=Intervalli di chiavi-Condiviso/Condiviso (LCK_M_RS_S)

14=Intervalli di chiavi-Condiviso/Aggiornamento (LCK_M_RS_U)

15=Intervalli di chiavi-Inserimento-NULL (LCK_M_RI_NL)

16=Intervalli di chiavi-Inserimento-Condiviso (LCK_M_RI_S)

17=Intervalli di chiavi-Inserimento-Aggiornamento (LCK_M_RI_U)

18=Intervalli di chiavi-Inserimento-Esclusivo (LCK_M_RI_X)

19=Intervalli di chiavi-Esclusivo-Condiviso (LCK_M_RX_S)

20=Intervalli di chiavi-Esclusivo-Aggiornamento (LCK_M_RX_U)

21=Intervalli di chiavi-Esclusivo-Esclusivo (LCK_M_RX_X)
32
ObjectID int ID dell'oggetto che è stato bloccato, se disponibile e applicabile. 22
ObjectID2 bigint ID dell'entità o dell'oggetto correlato, se disponibile e applicabile. 56
OwnerID int 1=TRANSACTION

2=CURSOR

3=SESSION

4=SHARED_TRANSACTION_WORKSPACE

5=EXCLUSIVE_TRANSACTION_WORKSPACE
58
RequestID int ID della richiesta contenente l'istruzione. 49
ServerName nvarchar Nome dell'istanza di SQL Server tracciata. 26 No
SessionLoginName nvarchar Nome dell'account di accesso dell'utente che ha avviato la sessione. Ad esempio, se ci si connette a SQL Server usando Login1 ed eseguire un'istruzione come Login2, SessionLoginName mostra Login1 e LoginName mostra Login2. In questa colonna vengono visualizzati sia gli account di accesso di SQL Server che di Microsoft Windows. 64
SPID int ID della sessione in cui si è verificato l'evento. 12
StartTime datetime Ora di inizio dell'evento, se disponibile. 14
TextData ntext Valore di testo che dipende dal tipo di risorsa. 1
TransactionID bigint ID della transazione assegnato dal sistema. 4
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

Vedi anche

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