Partager via


Classe d'événements Lock:Timeout

La classe d’événements Lock :Timeout indique qu’une demande de verrouillage sur une ressource, telle qu’une page, a expiré, car une autre transaction contient un verrou bloquant sur la ressource requise. Le délai d’attente est déterminé par la fonction système @@LOCK_TIMEOUT et peut être défini avec l’instruction SET LOCK_TIMEOUT.

Utilisez la classe d’événements Lock:Timeout pour surveiller quand des conditions de dépassement de délai se produisent. Ces informations sont utiles pour déterminer si les délais d’attente affectent considérablement les performances de votre application et quels objets sont impliqués. Vous pouvez examiner le code d’application qui modifie ces objets pour déterminer si des modifications pour réduire le délai d’attente peuvent être apportées.

Les événements Lock :Timeout avec une durée de 0 sont généralement le résultat de sondes de verrouillage internes et ne sont pas nécessairement une indication d’un problème. L’événement Lock :Timeout (délai d’expiration > 0) peut être utilisé pour ignorer les délais d’attente avec une durée de 0.

Colonnes de données de la classe d’événements Lock :Timeout

Nom de la colonne de données Type de données Descriptif ID de la colonne Filtrable
Nom de l'application nvarchar Nom de l’application cliente qui a créé la connexion à une instance de SQL Server. Cette colonne est remplie avec les valeurs passées par l'application plutôt que par le nom affiché du programme. 10 Oui
BinaryData image Verrouiller l’identificateur de ressource. 2 Oui
ClientProcessID int ID affecté par l'ordinateur hôte au processus dans lequel s'exécute l'application cliente. La colonne de données est remplie si le client fournit l'ID du processus client. 9 Oui
ID de base de données int ID de la base de données dans laquelle le délai d’expiration du verrouillage s’est produit. 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 de la base de données nvarchar Nom de la base de données dans laquelle le délai d’attente s’est produit. 35 Oui
Durée bigint Durée (en microsecondes) entre le moment où la demande de verrouillage a été émise et que le verrou a été expiré. 13 Oui
Heure de fin datetime Heure à laquelle l'événement s'est terminé. 15 Oui
EventClass int Type d’événement = 27. 27 Non
Séquence d'événements int Séquence d’un événement donné dans la requête. 51 Non
ID de groupe int ID du groupe de charges de travail où l'événement Trace SQL se déclenche. 66 Oui
Nom d'hôte nvarchar Nom de l'ordinateur sur lequel le client est exécuté. La colonne de données est remplie si le client fournit le nom de l'hôte. Pour déterminer le nom de l’hôte, utilisez la fonction HOST_NAME . 8 Oui
DonnéesEntières2 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. soixante Oui
Nom d'utilisateur nvarchar Nom de la connexion de l’utilisateur (connexion de sécurité SQL Server ou informations d’identification de connexion Microsoft Windows sous la forme domain\username). 11 Oui
ID de connexion 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 de fonctionnement int Le mode résultant après le délai d’attente.

0=NULL - Compatible avec tous les autres modes de verrouillage (LCK_M_NL)

1=Verrou de stabilité du schéma (LCK_M_SCH_S)

2=Verrou de modification du schéma (LCK_M_SCH_M)

3=Verrouillage partagé (LCK_M_S)

4=Mettre à jour le verrou (LCK_M_U)

5=Verrouillage exclusif (LCK_M_X)

6=Verrou partagé d’intention (LCK_M_IS)

7=Verrou de mise à jour de l’intention (LCK_M_IU)

8=Verrouillage exclusif d’intention (LCK_M_IX)

9=Partagé avec l’intention de mettre à jour (LCK_M_SIU)

10=Partagé avec intention exclusive (LCK_M_SIX)

11=Mettre à jour avec l’intention exclusive (LCK_M_UIX)

12=Verrou de mise à jour en masse (LCK_M_BU)

13=Clés partagées/partagées (LCK_M_RS_S)

14=Plage de clés partagée/mise à jour (LCK_M_RS_U)

15=Insérer une plage clé NULL (LCK_M_RI_NL)

16=Insertion de plage de clés partagée (LCK_M_RI_S)

17=Mise à jour d’insertion de plage de clés (LCK_M_RI_U)

18=Insertion exclusive de plage de clés (LCK_M_RI_X)

19=Plage de clés Exclusif Partagé (LCK_M_RX_S)

20=Mise à jour exclusive de plage de clés (LCK_M_RX_U)

21=Verrouillage exclusif de plage de clés (LCK_M_RX_X)
32 Oui
Nom de domaine NT nvarchar Domaine Windows auquel appartient l'utilisateur. 7 Oui
NTUserName (Nom d'utilisateur NT) nvarchar Nom d'utilisateur Windows. 6 Oui
Identifiant d'objet int Identifiant de l’objet qui a expiré, si disponible et applicable. 22 Oui
ObjectID2 bigint ID de l’objet ou de l’entité associé, le cas échéant. 56 Oui
ID du propriétaire int 1=Transaction

2=CURSEUR

3=SESSION (if no translation is required or it serves as an identifier)

4=ESPACE_DE_TRAVAIL_TRANSACTION_PARTAGÉE

5=EXCLUSIVE_TRANSACTION_WORKSPACE
58 Oui
RequestID int ID de la demande contenant l'instruction. 49 Oui
Nom du serveur 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 ; alors que LoginName affiche Login2. Cette colonne affiche à la fois les connexions SQL Server et Windows. 64 Oui
SPID int ID de la session au cours de laquelle l'événement s'est produit. 12 Oui
Heure de début datetime Heure à laquelle a débuté l'événement, si elle est connue. 14 Oui
Données textuelles ntext Valeur de texte dépendante du type de verrou acquis lorsque le délai d’attente s’est produit. 1 Oui
TransactionID bigint ID affecté par le système à la transaction. 4 Oui
Catégorie int 1=RESSOURCE_NULLE

2=BASE DE DONNÉES

3=FICHIER

5=OBJET

6=PAGE

7=CLÉ

8=ÉTENDUE

9=RID

10=APPLICATION

11=MÉTADONNÉES

12=AUTONAMEDB

13=HOBT

14=UNITÉ_D'ALLOCATION
57 Oui

Voir aussi

sp_trace_setevent (Transact-SQL)
Lock :Timeout (timeout > 0) Classe d’événements
sys.dm_tran_locks (Transact-SQL)