Classe d'événements Lock:Deadlock Chain
S’applique à : SQL Server
La classe d'événements Lock:Deadlock Chain est produite pour chaque participant dans un blocage.
Utilisez la classe d'événements Lock:Deadlock Chain pour analyser les conditions d'un blocage. Ces informations sont utiles pour déterminer si les interblocages affectent les performances de votre application de manière significative et les objets qui sont concernés. Vous pouvez examiner le code de l'application qui modifie ces objets pour déterminer si des modifications peuvent être apportées pour minimiser les blocages.
Colonnes de données de la classe d'événements Lock:Deadlock Chain
Nom de la colonne de données | Type de données | Description | ID de la colonne | Filtrable |
---|---|---|---|---|
BinaryData | image | Identificateur de ressource du verrou. | 2 | Oui |
DatabaseID | int | ID de la base de données à laquelle cette ressource appartient. Le Générateur de profils SQL affiche le nom de la base de données si la colonne de données ServerName du serveur est capturée dans la trace et que le serveur est disponible. Déterminez la valeur pour une base de données à l'aide de la fonction DB_ID. | 3 | Oui |
nom_base_de_données | nvarchar | Nom de la base de données à laquelle la ressource appartient. | 35 | Oui |
EventClass | int | Type d’événement = 59. | 27 | Non |
EventSequence | int | Séquence d'un événement donné au sein de la demande. | 51 | Non |
EventSubClass | int | Type de sous-classe d'événements. 101=Type de ressource verrou 102=Type de ressource échange |
21 | Oui |
IntegerData | int | Numéro de l'interblocage. Des numéros sont affectés à partir de 0 lors du démarrage du serveur, puis sont incrémentés à chaque interblocage. | 25 | Oui |
IntegerData2 | int | Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie. | 55 | Oui |
IsSystem | int | Indique si l'événement s'est produit sur un processus système ou sur un processus utilisateur. 1 = système, 0 = utilisateur. | 60 | Oui |
LoginSid | image | Numéro d'identification de sécurité (SID) de l'utilisateur connecté. Vous pouvez trouver ces informations dans l’affichage catalogue sys.server_principals . Chaque connexion possède un SID unique au niveau du serveur. | 41 | Oui |
Mode | int | 0=NULL - Compatible avec tous les autres modes de verrouillage (LCK_M_NL) 1=Verrou de stabilité de schéma (LCK_M_SCH_S) 2 = verrou de modification de schéma (LCK_M_SCH_M) 3 = verrou partagé (LCK_M_S) 4 = verrou de mise à jour (LCK_M_U) 5 = verrou exclusif (LCK_M_X) 6 = verrou Intent partagé (LCK_M_IS) 7 = verrou Intent de mise à jour (LCK_M_IU) 8 = verrou Intent exclusif (LCK_M_IX) 9 = verrou partagé avec mise à jour Intent (LCK_M_SIU) 10 = verrou partagé avec Intent exclusif (LCK_M_SIX) 11 = verrou mise à jour avec Intent exclusif (LCK_M_UIX) 12 = verrou de mise à jour en bloc (LCK_M_BU) 13 = verrou d'étendue de clés partagé/de ressources partagé (LCK_M_RS_S) 14 = verrou d'étendue de clés partagé/de ressources partagé (LCK_M_RS_U) 15 = verrou d'étendue de clés d'insertion de valeurs NULL (LCK_M_RI_NL) 16 = verrou d'étendue de clés d'insertion partagé (LCK_M_RI_S) 17 = verrou d'étendue de clés d'insertion de mise à jour (LCK_M_RI_U) 18 = verrou d'étendue de clés d'insertion exclusif (LCK_M_RI_X) 19 = verrou d'étendue de clés exclusif partagé (LCK_M_RX_S) 20 = verrou d'étendue de clés exclusif de mise à jour (LCK_M_RX_U) 21 = verrou d'étendue de clés exclusif/de ressources exclusif (LCK_M_RX_X) |
32 | Oui |
ObjectID | int | ID de l'objet qui est verrouillé, s'il est disponible et applicable. | 22 | Oui |
ObjectID2 | bigint | ID de l'objet ou de l'entité associé, s'il est disponible et applicable. | 56 | Oui |
OwnerID | int | 1=TRANSACTION 2=CURSOR 3=SESSION 4=SHARED_TRANSACTION_WORKSPACE 5=EXCLUSIVE_TRANSACTION_WORKSPACE |
58 | Oui |
RequestID | int | ID de la demande contenant l'instruction. | 49 | Oui |
ServerName | nvarchar | Nom de l’instance de SQL Server en cours de suivi. | 26 | Non |
SessionLoginName | nvarchar | Nom de connexion de l'utilisateur à l'origine de la session. Par exemple, si vous vous connectez à SQL Server à l’aide de Login1 et exécutez une instruction en tant que Login2, SessionLoginName affiche Login1 et LoginName affiche Login2. Cette colonne affiche à la fois les connexions SQL Server et Microsoft Windows. | 64 | Oui |
SPID | int | ID de la session au cours de laquelle l'événement s'est produit. | 12 | Oui |
StartTime | datetime | Heure à laquelle a débuté l'événement, si elle est connue. | 14 | Oui |
TextData | ntext | Valeur texte dépendant du type de ressource. | 1 | Oui |
TransactionID | bigint | ID affecté par le système à la transaction. | 4 | Oui |
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 | Oui |
Voir aussi
sp_trace_setevent (Transact-SQL)
sys.dm_tran_locks (Transact-SQL)