Compartilhar via


MSSQLSERVER_19421

Aplica-se: SQL Server

Detalhes

Atributo Valor
Nome do produto SQL Server
ID do evento 19421
Origem do Evento MSSQLSERVER
Componente SQLEngine
Nome simbólico HADR_AG_LEASE_RENEWAL_TIMEOUT
Texto da mensagem O grupo de disponibilidade de hospedagem do SQL Server '%.*ls' não recebeu um sinal de evento de processo do Cluster de Failover do Windows Server dentro do período de tempo limite de concessão.

Explicação

O erro 19421 é gerado no log de erros do SQL Server quando o auxiliar de concessão no lado do cluster do Windows não sinalizou o thread de trabalho de concessão do SQL Server dentro do período de concessão predefinido. Especificamente, o SQL Server chama WaitForMultipleObjects() aguardando que o evento de tempo limite de concessão seja definido em um estado sinalizado. Se a função retornar WAIT_TIMEOUT, porque excedeu o intervalo de concessão especificado, o erro 19421 será gerado.

Uma concessão é um mecanismo de comunicação baseado em tempo que ocorre entre o SQL Server e o processo WSFC (Cluster de Failover do Windows Server), especificamente o processo RHS.EXE. Os dois processos se comunicam periodicamente para garantir que o outro processo esteja sendo executado e respondendo. Essa comunicação ocorre usando objetos de Evento do Windows e garante que um failover do recurso do AG não ocorra sem o conhecimento do WSFC. Se um dos processos não responder à comunicação de concessão com base em um período de locação predefinido, ocorrerá um tempo limite de locação. Para obter informações detalhadas, consulte Mecanismo de concessão. Consulte também Como funciona: Tempo limite de concessão AlwaysOn do SQL Server

Esse erro está relacionado a outros erros de tempo limite de concessão e fornece detalhes mais específicos para o erro MSSQLSERVER_19407

Causas

Como os Eventos do Windows são objetos de sincronização leves, há um número relativamente pequeno de fatores externos que os afetam negativamente. Problemas típicos que podem levar ao tempo limite de concessão envolvem problemas em todo o sistema. Aqui está uma lista de possibilidades que podem causar a expiração da concessão e causar uma reinicialização ou failover:

  • Alto uso da CPU no sistema (perto de 100%)
  • Condições de falta de memória - pouca memória virtual e/ou um dos processos está sendo paginado
  • O processo do SQL Server não está respondendo ao gerar um grande despejo de memória
  • WSFC ficando offline (por exemplo, devido à perda de quorum)

Ação do usuário

Verifique o recurso do Grupo de Disponibilidade correspondente no cluster WSFC para ver se ele relatou algum erro.

Para obter uma solução de problemas detalhada, consulte Ação do usuário no MSSQLSERVER_19407

  • Solucionar problemas de alta CPU
  • Solucionar problemas de pouca memória
  • Reduzir ou evitar grandes despejos de memória do SQL Server ou do processo de cluster
  • Verificar a configuração da VM (máquina virtual) para superprovisionamento
  • Verifique se há migração ou backup de máquina virtual (VM) causando problemas