Partager via


Classe d'événements Lock:Timeout

S’applique à : SQL Server

La classe d'événements Lock:Timeout indique qu'une demande de verrou sur une ressource (par exemple une page) a dépassé le délai d'attente parce qu'une autre transaction retient un verrou bloquant sur la ressource requise. Le délai est déterminé par la fonction système @@LOCK_TIMEOUT et peut être défini à l'aide de l'instruction SET LOCK_TIMEOUT.

Utilisez la classe d'événements Lock:Timeout pour surveiller à quel moment des conditions d'expiration de délai se produisent. Ces informations sont utiles pour déterminer si les expirations des délais affectent de manière significative les performances de votre application et quels objets sont concernés. Vous pouvez examiner le code de l'application qui modifie ces objets pour déterminer si des modifications pouvant minimiser les délais d'expiration sont possibles.

Les événements Lock:Timeout d'une durée égale à 0 sont généralement le résultat d'analyses par sondage de verrou interne et n'indiquent pas nécessairement 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 Description ID de la colonne Filtrable
ApplicationName 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 Identificateur de ressource du verrou. 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
DatabaseID int ID de la base de données dans laquelle a eu lieu le dépassement de délai d'attente de verrouillage. 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 dans laquelle a eu lieu le dépassement de délai. 35 Oui
Durée bigint Durée (en microsecondes) s'écoulant entre l'émission de la demande de verrou et l'expiration de la temporisation. 13 Oui
EndTime datetime Heure à laquelle l'événement s'est terminé. 15 Oui
EventClass int Type d’événement = 27. 27 Non
EventSequence int Séquence d'un événement donné au sein de la demande. 51 Non
GroupID int ID du groupe de charges de travail où l'événement Trace SQL se déclenche. 66 Oui
HostName 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
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
LoginName 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
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 Mode au terme du délai d'attente.

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
NTDomainName nvarchar Domaine Windows auquel appartient l'utilisateur. 7 Oui
NTUserName nvarchar Nom d'utilisateur Windows. 6 Oui
ObjectID int ID de l'objet arrivé à expiration, sous réserve qu'il soit disponible et applicable. 22 Oui
ObjectID2 bigint ID de l'entité ou de l'objet 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 ; 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
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 verrou en cours d'acquisition au moment où l'expiration du délai d'attente s'est produite. 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)
Lock :Timeout (timeout > 0) Classe d’événements
sys.dm_tran_locks (Transact-SQL)