Sintomas
Suponha que você tenha um grupo de disponibilidade AlwaysOn implantado no servidor S1 e no servidor S2 no Microsoft SQL Server 2014. Um problema de integridade é detectado na réplica primária (S1) e o grupo disponibilidade está em trânsito para o estado de resolução e começa o failover se estiver configurado para failover automático. O grupo disponibilidade pode permanecer no estado de resolução. O erro do Agendador sem concessão pode aparecer no log de erros na réplica primária (S1) ou na réplica secundária (S2):
-
O seguinte erro de Agendador sem concessão pode ocorrer na réplica primária ao tempo em que o grupo de disponibilidade está em trânsito do primário para a resolução:
<data> <hora> SPID<ID> usando ' dbghelp. dll ' versão ' 4.0.5 ' <data> <time> SPID> <0 ID> usando ' dbghelp. dll ' versão ' 4.0.5 ' <Data> <Time> Server usando ' dbghelp. dll ' version ' 4.0.5 ' <Date> <time> Server * * * não é possível obter contexto de thread para SPID 0> <0 Data> <time> Server * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * <Data> <hora> server * <data> <time> server * iniciar o despejo da pilha: <Data> <time> Server * <Data> <time> SPID<ID><Data> <hora> Server * <Data> <time> Server * Agendador sem concessão> <0 Data> <time> Server * <Data> <time> Server * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * <Data> <hora> assinatura da pilha do servidor do despejo é 0x0000000000000176> <2 Data> <tempo> tempo limite do servidor aguardando o processo de despejo externo 982676. <data> <hora> Server Process 0:0:0 (0x11428) o 0x00000075CB92C160 do trabalho parece não ser a concessão no Agendador 0. Tempo de criação do thread: 13011925023676. CPU de thread aprox usado: kernel 0 ms, usuário 0 ms. Utilização de processo 2%. System Idle 84%. Intervalo: 76880 MS.
-
O seguinte erro de Agendador sem concessão pode ocorrer na réplica secundária se o grupo de disponibilidade estiver configurado para failover automático e se o parceiro de failover estiver tentando transitar para a função principal:
<data> <Time> SPID<ID> o banco de dados do grupo de disponibilidade "agname" está alterando funções de "resolvendo" para "principal" porque a sessão de espelhamento ou o grupo de disponibilidade falharam devido à sincronização de funções. Esta é uma mensagem informativa apenas. No user action is required....<Date> <Time> Server Using 'dbghelp.dll' version '4.0.5'<Date> <Time> Server ***Unable to get thread context for spid 0<Date> <Time> Server * *******************************************************************************<Date> <Time> Server *<Date> <Time> Server * BEGIN STACK DUMP:<Date> <Time> Server * <Date> <Time> spid> <8 ID><Date> <Time> Server * Private server build.<Date> <Time> Server *<Date> <Time> Server * Non-yielding Scheduler> <2 Date> <Time> Server *<Date> <Time> Server * *******************************************************************************<Date> <Time> Server Stack Signature for the dump is 0x000000000000006D> <4 Date> <Time> Server External dump process return code 0x20000001. O processo de despejo externo não retornou erros. <data> <time> Server Process 0:0:0 (0x1e94) Work 0x000000082F270160 parece estar sem concessão no Agendador 0. Tempo de criação do thread: 13059453624681. CPU de thread aprox usado: kernel 0 ms, usuário 0 ms. Utilização de processo 3%. System Idle 84%. Intervalo: 70358 MS. <data> <time> processo do servidor 0:0:0 (0x998) o 0x00000000B3F86160 de trabalho parece estar sem concessão no Agendador 2. Tempo de criação do thread: 13059458965740. CPU de thread aprox usado: kernel 0 ms, usuário 0 ms. Utilização de processo 3%. System Idle 83%. Intervalo: 76913 MS.Data> <time> processo do servidor 0:0:0 (0x1a64) o 0x0000000B5E220160 do trabalho parece não estar resultando no Agendador 3. Tempo de criação do thread: 13059466511951. CPU de thread aprox usado: kernel 0 ms, usuário 0 ms. Utilização de processo 3%. System Idle 83%. Intervalo: 76944 MS.
Observação Esse problema também ocorre no SQL Server 2012.
Resolução
Depois de aplicar esse hotfix, a condição do Agendador sem concessão pode ser evitada. Este problema foi corrigido primeiro na atualização cumulativa a seguir do SQL Server.
Atualização cumulativa 5 para SQL Server 2014 /en-us/help/3011055
Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança incluídas na atualização cumulativa anterior. Confira as atualizações cumulativas mais recentes do SQL Server:
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".