Sintomas
Suponha que você habilita o Ajuste Automático de Consulta no SQL Server 2017 e 2019. Ao executar muitos procedimentos armazenados simultâneos, você pode encontrar o cenário de bloqueio COMPILE nas seguintes condições:
-
Execute o procedimento armazenado.
-
Use o QDS (Armazenamento de Dados de Consulta) para forçar o plano.
-
Execute sp_recompile procedimento armazenado para remover o plano do cache de procedimento.
-
Execute o procedimento armazenado simultaneamente em muitas sessões separadas.
Causa
Depois de forçar um plano usando o Armazenamento de Dados de Consulta e removendo-o do cache de procedimento, o plano não é mais armazenado em cache e a execução simultânea resulta em bloqueio de compilação.
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".
Resolução
Esse problema foi corrigido nas seguintes atualizações cumulativas do SQL Server:
Sobre atualizações cumulativas do SQL Server:
Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança que foram incluídas na atualização cumulativa anterior. Confira 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.