Sintomas
Suponha que você use o recurso grupos de disponibilidade AlwaysOn no Microsoft SQL Server 2012, 2014 ou 2016. Toda vez que você executar uma consulta em um banco de dados secundário, a consulta será recompilada. Esse problema ocorre porque as estatísticas não são propagadas corretamente do servidor primário para o servidor secundário. Se você executar o rastreamento do Profiler, você encontrará algo semelhante ao seguinte sobre o nome do perfil, o que significa que o SQL Server está consultando estatísticas:SELECT StatMan([SC0], [SB0000]) FROM (SELECT TOP 100 PERCENT [SC0], step_direction([SC0]) over (order by NULL) AS [SB0000] FROM (SELECT [xxx] AS [SC0] FROM [dbo].[xxx] TABLESAMPLE SYSTEM (7.033584e-001 PERCENT) WITH (READUNCOMMITTED) ) AS _MS_UPDSTATS_TBL_HELPER ORDER BY [SC0], [SB0000] ) AS _MS_UPDSTATS_TBL OPTION (MAXDOP 1) Observação Se você desabilitar a opção de estatística de atualização automática ou habilitar a opção de atualização automática de estatísticas de forma assíncrona , esse problema não ocorrerá.
Resolução
O problema foi corrigido primeiro na seguinte atualização cumulativa do 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. Recomendamos que você baixe e instale as atualizações cumulativas mais recentes do SQL Server:
Referências
Saiba mais sobre a terminologia que a Microsoft usa para descrever atualizações de software.