Sintomas
Assuma que cria um procedimento armazenado de forma nativa com uma consulta que contém uma grande expressão que tem mais de 256 operadores no Microsoft SQL Server 2014. Quando tenta utilizar showplan_xml na consulta ou no procedimento, recebe o seguinte erro:
Msg 41322, Nível 16, Estado 33, Procedimento <sp_name>, Linha <line_number>exportação/importação MAT/PIT encontrou uma falha na tabela otimizada da memória ou procedimento armazenado de forma nativa com identificação de objetos<número de identificação>na<número de identificação da base de dados>. O código de erro era 0x8800015.
Causa
O problema ocorre devido a um defeito no SQL Server 2014.
Resolução
Após a aplicação do hotfix, showplan_xml terá sucesso para o procedimento nativo que tem um grande número de operadores. O problema foi corrigido pela primeira vez na seguinte atualização cumulativa do SQL Server.
Atualização Cumulativa 1 para SQL Server 2014 /en-us/help/2931693
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 com a atualização cumulativa anterior. Confira as últimas atualizações cumulativas do SQL Server:
Solução
Para contornar a questão, utilize as seguintes soluções alternativas:
-
Parta as expressões em múltiplas subexpressões.
-
Use parênteses para forçar explicitamente a nidificação de expressões para fazer uma árvore de expressão larga mas rasa em vez de uma árvore de expressão profundamente aninhada.
Estado
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".