Lock:Timeout (clase de eventos)

Se aplica a: SQL Server

La clase de eventos Lock:Timeout indica que una solicitud de bloqueo de un recurso, como una página, ha agotado el tiempo de espera debido a que existía otra transacción que mantenía un bloqueo de cierre en el recurso necesario. El tiempo de espera está determinado por la función del sistema @@LOCK_TIMEOUT y se puede establecer con la instrucción SET LOCK_TIMEOUT.

Utilice la clase de eventos Lock:Timeout para supervisar cuándo se producen las condiciones de tiempo de espera. Esta información es útil para determinar si los tiempos de espera afectan al rendimiento de la aplicación de manera significativa y qué objetos están implicados. Puede examinar el código de aplicación que modifica estos objetos para determinar si se pueden realizar cambios para minimizar los tiempos de espera.

Los eventos Lock:Timeout con una duración 0 son habitualmente resultado de sondeos de bloqueo internos y no indican necesariamente que exista un problema. El evento Lock:Timeout (tiempo de espera > 0) se puede usar para omitir los tiempos de espera con una duración de 0.

Columnas de datos de la clase de eventos Lock:Timeout

Nombre de columna de datos Tipo de datos Descripción Identificador de columna Filtrable
ApplicationName nvarchar Nombre de la aplicación cliente que creó la conexión a una instancia de SQL Server. Esta columna se rellena con los valores que pasa la aplicación, en lugar de con el nombre que se muestra para el programa. 10
BinaryData image Identificador del recurso de bloqueo. 2
ClientProcessID int Identificador que el equipo host asigna al proceso en el que se ejecuta la aplicación cliente. Esta columna de datos se rellena si el cliente proporciona el identificador de proceso del cliente. 9
DatabaseID int Identificador de la base de datos en la que ha producido el tiempo de espera de bloqueo. SQL Server Profiler muestra el nombre de la base de datos si se captura la columna de datos ServerName en el seguimiento y el servidor está disponible. Determina el valor de una base de datos mediante la función DB_ID. 3
DatabaseName nvarchar Nombre de la base de datos en la que ha agotado el tiempo de espera. 35
Duration bigint Tiempo (en microsegundos) entre el envío de la solicitud de bloqueo y la superación del tiempo de espera del mismo. 13
EndTime datetime Hora de finalización del evento. 15
EventClass int Tipo de evento = 27. 27 No
EventSequence int Secuencia de un evento determinado dentro de la solicitud. 51 No
GroupID int Id. del grupo de carga de trabajo donde se activa el evento de Seguimiento de SQL. 66
HostName nvarchar Nombre del equipo en el que se está ejecutando el cliente. Esta columna de datos se rellena si el cliente proporciona el nombre del host. Para averiguar el nombre de host, use la función HOST_NAME . 8
IntegerData2 int Solamente se identifica con fines informativos. No compatible. La compatibilidad con versiones posteriores no está garantizada. 55
IsSystem int Indica si el evento ha ocurrido en un proceso del sistema o en un proceso de usuario. 1 = sistema, 0 = usuario. 60
LoginName nvarchar Nombre del inicio de sesión del usuario (inicio de sesión de seguridad de SQL Server o las credenciales de inicio de sesión de Microsoft Windows en forma de DOMINIO\nombredeusuario). 11
LoginSid image SID (número de identificación de seguridad) del usuario que ha iniciado la sesión. Puede buscar esta información en la vista de catálogo sys.server_principals. Cada SID es único para cada inicio de sesión en el servidor. 41
Mode int Modo resultante después del tiempo de espera.

0=NULL: Compatible con los demás modos de bloqueo (LCK_M_NL)

1=Bloqueo Estabilidad del esquema (LCK_M_SCH_S)

2=Bloqueo Modificación del esquema (LCK_M_SCH_M)

3=Bloqueo Compartido (LCK_M_S)

4=Bloqueo Actualizar (LCK_M_U)

5=Bloqueo Exclusivo (LCK_M_X)

6=Bloqueo Intención compartida (LCK_M_IS)

7=Bloqueo Actualizar intención (LCK_M_IU)

8=Bloqueo Intención exclusiva (LCK_M_IX)

9=Actualizar intención compartida (LCK_M_SIU)

10=Intención compartida exclusiva (LCK_M_SIX)

11=Actualizar intención exclusiva (LCK_M_UIX)

12=Bloqueo Actualización masiva (LCK_M_BU)

13=Intervalo de claves compartido/compartido (LCK_M_RS_S)

14=Intervalo de claves compartido/actualización (LCK_M_RS_U)

15=Intervalo de claves de inserción NULL (LCK_M_RI_NL)

16=Intervalo de claves de inserción compartido (LCK_M_RI_S)

17=Intervalo de claves de inserción de actualización (LCK_M_RI_U)

18=Intervalo de claves de inserción exclusivo (LCK_M_RI_X)

19=Intervalo de claves exclusivo compartido (LCK_M_RX_S)

20=Intervalo de claves exclusivo de actualización (LCK_M_RX_U)

21=Intervalo de claves exclusivo exclusivo (LCK_M_RX_X)
32
NTDomainName nvarchar Dominio de Windows al que pertenece el usuario. 7
NTUserName nvarchar Nombre del usuario de Windows. 6
ObjectID int Id. del objeto que ha superado el tiempo de espera, si está disponible y es aplicable. 22
ObjectID2 bigint Id. del objeto o entidad relacionado, si está disponible y es aplicable. 56
OwnerID int 1=TRANSACTION

2=CURSOR

3=SESSION

4=SHARED_TRANSACTION_WORKSPACE

5=EXCLUSIVE_TRANSACTION_WORKSPACE
58
RequestID int Identificador de la solicitud que contiene la instrucción. 49
nombreDeServidor nvarchar Nombre de la instancia de SQL Server que se realiza el seguimiento. 26 No
SessionLoginName nvarchar Nombre de inicio de sesión del usuario que originó la sesión. Por ejemplo, si se conecta a SQL Server mediante Login1 y ejecuta una instrucción como Login2, SessionLoginName muestra Login1; mientras LoginName muestra Login2. En esta columna se muestran los inicios de sesión de SQL Server y Windows. 64
SPID int Identificador de la sesión en la que se produjo el evento. 12
StartTime datetime Hora a la que se inició el evento, si está disponible. 14
TextData ntext Valor de texto que depende del tipo de bloqueo que se adquiría cuando se agotó el tiempo de espera. 1
TransactionID bigint Id. de la transacción asignado por el sistema. 4
Tipo 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

Consulte también

sp_trace_setevent (Transact-SQL)
Lock:Timeout (timeout > 0) (clase de eventos)
sys.dm_tran_locks (Transact-SQL)