Sintomas
Suponha que você habilitou o novo estimador de cardinalidadeno Microsoft SQL Server 2014. Ao executar uma consulta que contém instruções de junção, você pode encontrar os seguintes problemas:
-
Algumas consultas demoram muito mais tempo para compilar, especialmente quando a consulta tem um número grande de junções. O tempo de compilação pode continuar crescendo significativamente com o crescimento de junções.
-
Quando o predicado de junção usa outras condições do que igualdade ou uma combinação de equalities, o número estimado de linhas de tipos específicos em junções é diferente do número real de linhas que são processadas. Nessa situação, o desempenho da consulta diminui e, como a consulta solicita uma grande concessão de memória, o desempenho geral do servidor diminui.
Resolução
Informações do Service Pack
Para solucionar esse problema, obtenha o Service Pack 1 para SQL Server 2014.
Para obter mais informações sobre o SQL Server 2014 Service Pack 1 (SP1), consulte erros corrigidos no SQL server 2014 Service Pack 1.Observação Para fazer com que a correção entre em vigor no segundo problema descrito neste artigo, habilite o sinalizador de rastreamento 4199.
Solução alternativa
Para contornar esses problemas, use o estimador cardinalidade antigo definindo o nível de compatibilidade do banco de dados como um valor menor do que 120 ou habilitando o sinalizador de rastreamento 9481 em nível global, de sessão ou de consulta.
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".