Condividi tramite


Classe di evento Lock:Deadlock Chain

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

image

Identificatore della risorsa blocco.

2

DatabaseID

int

ID del database a cui appartiene questa risorsa. In SQL Server Profiler viene visualizzato il nome del database se l'acquisizione per la traccia include la colonna di dati ServerName e il server è disponibile. È possibile 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 nella 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

Riservato per utilizzi futuri.

55

IsSystem

int

Indica se l'evento si è verificato in un processo di sistema o in un processo utente. 1 = sistema, 0 = utente.

60

LoginSid

image

ID di protezione (SID) dell'utente connesso. Tali informazioni sono disponibili nella tabella syslogins del database master. Il SID è univoco per ogni account di accesso nel server.

41

Mode

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 di condivisione (LCK_M_S)

4=Blocco di aggiornamento (LCK_M_U)

5=Blocco esclusivo (LCK_M_X)

6=Blocco di condivisione 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 di massa (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 di cui si sta eseguendo la traccia.

26

No

SessionLoginName

nvarchar

Nome dell'account di accesso dell'utente che ha avviato la sessione. Ad esempio, se si attiva la connessione a SQL Server con l'account di accesso Login1 e si esegue un'istruzione con l'account di accesso Login2, SessionLoginName indica Login1 e LoginName indica Login2. In questa colonna vengono visualizzati sia gli account di accesso di SQL Server che quelli 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

Vedere anche

Concetti

Utilizzo dei blocchi in Motore di database
Compatibilità tra blocchi (Motore di database)

Altre risorse

Monitoraggio di eventi
sp_trace_setevent (Transact-SQL)
sys.dm_tran_locks

Guida in linea e informazioni

Assistenza su SQL Server 2005