Compartilhar via


Classe de evento Lock:Timeout

A classe de evento Lock:Timeout indica que uma solicitação para um bloqueio em um recurso, como uma página, atingiu o tempo limite porque outra transação está mantendo um bloqueio no recurso necessário. O tempo limite é determinado pela função do sistema @@LOCK_TIMEOUT e pode ser definido com a instrução SET LOCK_TIMEOUT.

Use a classe de evento Lock:Timeout para monitorar quando ocorrem condições de tempo limite. Esta informação é útil para determinar se os tempos de espera estão afetando significativamente o desempenho da sua aplicação e quais objetos estão envolvidos. Você pode examinar o código do aplicativo que modifica esses objetos para determinar se alterações para minimizar o timeout podem ser feitas.

Eventos lock:timeout com uma duração de 0 geralmente são o resultado de investigações de bloqueio internas e não são necessariamente uma indicação de um problema. O evento Lock:Timeout (tempo limite > 0) pode ser usado para ignorar tempos limite com uma duração de 0.

Colunas de dados da classe de evento Lock:Timeout

Nome da coluna de dados Tipo de dados Descrição ID da coluna Filtrável
NomeDaAplicação nvarchar Nome do aplicativo cliente que criou a conexão com uma instância do SQL Server. Essa coluna é populada com os valores passados pelo aplicativo e não com o nome exibido do programa. 10 Sim
BinaryData image Identificador de recurso de bloqueio. 2 Sim
ClientProcessID int ID atribuída pelo computador host ao processo em que o aplicativo cliente está sendo executado. Essa coluna de dados será populada se o cliente fornecer a ID de processo do cliente. 9 Sim
ID do Banco de Dados int ID do banco de dados no qual o tempo limite de bloqueio ocorreu. O SQL Server Profiler exibirá o nome do banco de dados se a coluna de dados ServerName for capturada no rastreamento e o servidor estiver disponível. Determine o valor para um banco de dados usando a função DB_ID. 3 Sim
Nome do Banco de Dados nvarchar Nome do banco de dados no qual o tempo limite ocorreu. 35 Sim
Duração bigint Quantidade de tempo (em microssegundos) entre o tempo em que a solicitação de bloqueio foi emitida e o bloqueio atingiu o tempo limite. 13 Sim
Hora de término datetime Hora em que o evento foi encerrado. 15 Sim
EventClass int Tipo de evento = 27. 27 Não
Sequência de Eventos int A sequência de um determinado evento dentro da solicitação. 51 Não
ID do Grupo int ID do grupo de carga de trabalho no qual o evento de Rastreamento do SQL dispara. 66 Sim
nome do host nvarchar Nome do computador no qual o cliente está sendo executado. Essa coluna de dados será populada se o cliente fornecer o nome do host. Para determinar o nome do host, use a função HOST_NAME . 8 Sim
DadosInteiros2 int Identificado apenas para fins informativos. Não há suporte. A compatibilidade futura não está garantida. 55 Sim
IsSystem int Indica se o evento ocorreu em um processo do sistema ou do usuário. 1 = sistema, 0 = usuário. 60 Sim
Nome de Usuário nvarchar Nome do logon do usuário (logon de segurança do SQL Server ou as credenciais de logon do Microsoft Windows na forma de DOMAIN\username). 11 Sim
LoginSid image Número SID (identificação de segurança) do usuário que fez logon. Você pode encontrar essas informações na exibição de catálogo sys.server_principals. Cada SID é exclusivo para cada logon no servidor. 41 Sim
Modo int O modo resultante após o tempo limite.

0=NULL - Compatível com todos os outros modos de bloqueio (LCK_M_NL)

1=Bloqueio de Estabilidade de Esquema (LCK_M_SCH_S)

2=Bloqueio de Modificação de Esquema (LCK_M_SCH_M)

3=Bloqueio Compartilhado (LCK_M_S)

4=Bloqueio de Atualização (LCK_M_U)

5=Bloqueio Exclusivo (LCK_M_X)

6=Bloqueio Compartilhado de Intenção (LCK_M_IS)

7=Bloqueio de Atualização de Intenção (LCK_M_IU)

8=Bloqueio Exclusivo de Intenção (LCK_M_IX)

9=Compartilhado com intenção de atualização (LCK_M_SIU)

10=Compartilhado com Intenção Exclusiva (LCK_M_SIX)

11=Atualizar com Intenção Exclusiva (LCK_M_UIX)

12=Bloqueio de Atualização em Massa (LCK_M_BU)

13=Intervalo de chave compartilhado/compartilhado (LCK_M_RS_S)

14=Intervalo de chaves Compartilhado/Atualização (LCK_M_RS_U)

15=Inserção de Faixa de Chave NULL (LCK_M_RI_NL)

16=Inserir Intervalo de Chaves Compartilhado (LCK_M_RI_S)

17=Atualização de Inserção de Intervalo de Chaves (LCK_M_RI_U)

18=Inserção Exclusiva de Intervalo de Chave (LCK_M_RI_X)

19=Faixa de Chave Exclusiva Compartilhada (LCK_M_RX_S)

20=Atualização Exclusiva de Intervalo de Chave (LCK_M_RX_U)

21=Intervalo de Chaves Exclusivo Exclusivo (LCK_M_RX_X)
32 Sim
Nome do Domínio NT nvarchar O domínio do Windows ao qual o usuário pertence. 7 Sim
NTNomeDeUsuário nvarchar Nome do usuário do Windows. 6 Sim
ID do objeto int ID do objeto que atingiu o tempo limite, se disponível e aplicável. 22 Sim
IdentificadorDeObjeto2 bigint ID do objeto ou entidade relacionado, se disponível e aplicável. 56 Sim
ID do Proprietário int 1=TRANSAÇÃO

2=CURSOR

3=SESSÃO

4=ESPAÇO_DE_TRABALHO_DE_TRANSAÇÃO_COMPARTILHADO

5=ESPAÇO_DE_TRABALHO_TRANSAÇÃO_EXCLUSIVA
58 Sim
RequestID int ID da solicitação que contém a instrução. 49 Sim
Nome do Servidor nvarchar Nome da instância do SQL Server que está sendo rastreada. 26 Não
SessionLoginName nvarchar Nome de logon do usuário que originou a sessão. Por exemplo, se você se conectar ao SQL Server usando Login1 e executar uma instrução como Logon2, SessionLoginName mostrará Logon1; enquanto LoginName mostra Logon2. Esta coluna exibe logons do SQL Server e do Windows. 64 Sim
SPID (Sistema de Identidade Público Digital) int Identificação da sessão em que ocorreu o evento. 12 Sim
HoraDeInício datetime Hora de início do evento, se disponível. 14 Sim
TextData ntext Valor de texto associado ao tipo de bloqueio que estava sendo adquirido quando ocorreu o timeout. 1 Sim
TransactionID bigint ID da transação atribuída pelo sistema. 4 Sim
Tipo int 1=NULL_RESOURCE

2=BANCO DE DADOS

3=ARQUIVO

5=OBJETO

6=PÁGINA

7=CHAVE

8=EXTENSÃO

9=RID

10=APLICAÇÃO

11=METADADOS

12=AUTONAMEDB

13=HOBT

14=UNIDADE_DE_ALOCACAO
57 Sim

Consulte Também

sp_trace_setevent (Transact-SQL)
Classe de evento Lock:Timeout (tempo limite > 0)
sys.dm_tran_locks (Transact-SQL)