Sintomas
Considere o seguinte cenário:
- Você habilita o SSB (Microsoft SQL Server Service Broker) no banco de dados do Grupo SQL Server AlwaysOn.
- Você desliga e reinicia o banco de dados.
- Certifique-se de que a confirmação (ACK) seja recebida com êxito.
Nesse cenário, a mensagem não é removida da fila de transmissão, mesmo que o ACK seja recebido com êxito.
Causa
O problema ocorre porque, quando você inicia o banco de dados após o desligamento limpo, o SQL Server não verifica se a tarefa de exclusão adiada da fila de transmissão é reutilizável. Ele pressupõe que a tarefa de exclusão adiada da fila de transmissão está correta.
Resolução
O problema foi corrigido pela primeira vez na atualização cumulativa seguinte do SQL Server.
Atualização cumulativa 1 para SQL Server 2014 /en-us/help/2931693
Atualização cumulativa 9 para SQL Server 2012 SP1 /en-us/help/2931078
Sobre atualizações cumulativas para o SQL Server
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:
- Atualização cumulativa mais recente do SQL Server 2014
- Atualização cumulativa mais recente do SQL Server 2012 SP1
Solução alternativa
Para contornar o problema, faça failover do Grupo de Disponibilidade do SQL Server para a réplica secundária (e failback, se necessário).
Status
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".