Sintomas
Considere o seguinte cenário:
-
Você usa uma configuração de estimativa de cardinalidade que corresponde ao nível de compatibilidade de banco de dados 120 ou a um nível posterior para seu sistema Microsoft SQL Server 2016 e 2017.
-
Você executa uma consulta que contém um predicado de pesquisa.
-
A consulta pesquisa valores menores ou iguais a qualquer número menor que o valor mínimo de RANGE_HI_KEY que é armazenado no objeto Statistics. Ou, a consulta pesquisa valores maiores do que o valor máximo de RANGE_HI_KEY para as mesmas estatísticas.
Nesse cenário, o otimizador de consulta estima o número de linhas. Isso pode causar uma opção de plano de consulta menor do que ideal e baixo desempenho.
Resolução
A correção para esse problema está incluída nas seguintes atualizações cumulativas do SQL Server:
Atualização cumulativa 6 para SQL Server 2017
Atualização cumulativa 8 para SQL Server 2016 SP1
Atualização cumulativa 2 para SQL Server 2016 Observação Depois de instalar esta atualização, você deve habilitar o sinalizador de rastreamento 4199 para habilitar essa correção. Para habilitar o sinalizador de rastreamento 4199, consulte o tópico indicadores de rastreamento (Transact-SQL) no site do Microsoft Developer Network (MSDN).
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".
Referências
Saiba mais sobre a terminologia usada pela Microsoft para descrever atualizações de software.