CORREÇÃO: erro "esgotado durante a espera de registrador de divisão de buffer - tipo 4" quando você usa grupos de disponibilidade no SQL Server 2016 ou 2017

Aplica-se a: Microsoft SQL Server 2016 Service Pack 1SQL Server 2016 DeveloperSQL Server 2016 Enterprise Mais

Sintomas


Quando você usar sempre em grupos de disponibilidade no Microsoft SQL Server 2016 ou 2017, a recuperação da réplica secundária legível paralela é suspensa se houver consultas somente leitura simultâneas na mesma réplica, e você recebe a seguinte mensagem de erro :

Date\Time SPID Um tempo limite ocorreu durante espera de registrador de divisão de buffer - tipo 4, 000000E66DA93540 de bp, página PageID, stat 0xb, id de banco de dados: DatabaseID, Id de unidade de alocação: UnitID, tarefa TaskID, tempo_de_espera 300 segundos, sinalizadores 0x1018, proprietário da tarefa TaskID. Não continuar a esperar.

Resolução


Esse problema foi corrigido nas seguintes atualizações cumulativas para o SQL Server:

Atualização cumulativa 6 para SQL Server 2017

Atualização de cumulativo 8 para SQL Server 2016 SP1

Solução alternativa


Para contornar esse problema, use um dos seguintes métodos:

  • Evitar o réplica primária e secundária réplica trabalhando na mesma tabela ao mesmo tempo.
  • Defina um tempo limite de consulta para sair da consulta quando ela foi executada para 1 ou 2 minutos.
  • Reduzir a MAXDOP.

Status


A Microsoft confirma que este é um problema em seus produtos listados na seção "Aplica-se a".

Referências


Saiba mais sobre a terminologia usada pela Microsoft para descrever as atualizações de software.