Aplica-se A
SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows SQL Server 2016 Service Pack 1 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Sintomas

Poderá ocorrer um erro de afirmação quando o Microsoft SQL Server executa repetidamente um procedimento armazenado que executa o seguinte:

  • Toma um objeto grande, como varchar(máx) ou varbinário(máx)como argumento, e

  • Cria uma tabela temporária que é telescópio para a execução do procedimento, e

  • Usa o argumento de objeto grande na tabela temporária.

Pode encontrar o erro de afirmação que se assemelha a seguir no registo de erro do SQL Server:

ErroSPID data/hora:17065, Severidade: 16, Estado: 1. 

Data/Hora SPID SQL Servidor Afirmação: Ficheiro: FilePath\ FilePath\ FileNameFileName, linha = LineNumber Failed Assertion = 'fFalse' Tentativa de aceder ao cabo de bolha expirado (1). Este erro pode estar relacionado com o tempo. Se o erro persistir após a reprodução da declaração, utilize o DBCC CHECKDB para verificar se existe integridade estrutural ou reinicie o servidor para garantir que as estruturas de dados na memória não sejam corrompidas.

Erro SPID data/hora: 3624, Severidade: 20, Estado: 1.

Data/Hora SPID Uma verificação de afirmação do sistema falhou. Verifique o registo de erros do SQL Server para obter mais detalhes. Normalmente, uma falha de afirmação é causada por um bug de software ou corrupção de dados. Para verificar se existe corrupção na base de dados, considere executar o DBCC CHECKDB. Se concordar em enviar despejos para a Microsoft durante a configuração, será enviada uma mini lixeira para a Microsoft. Uma atualização pode estar disponível da Microsoft no mais recente Pack de Serviços ou num Hotfix de Suporte Técnico.

Causa

O SQL Server tem lógica interna para desativar o tiaching de consultas que referenciam objetos grandes de modo a que as execuções subsequentes não refiram esses LOBs (que foram criados durante execuções anteriores e, portanto, são inválidos para execuções posteriores). Esta lógica não lidou com o caso da Resolução de Nome Diferido (DNR) em tabelas temporárias que fizeram com que esses planos fossem em cache. As tabelas temporárias de âmbito são dispendiosas para criar, e o SQL Server caches para reutilização em execuções subsequentes. Isto impede a recompreensão de tais consultas devido a alterações de esquemas.

Saiba mais sobre a Resolução de Nomes Diferidos.

Resolução

Esta emissão é corrigida nas seguintes atualizações cumulativas para o SQL Server:

       Atualização cumulativa 8 para SQL Server 2016 SP1  

       Atualização Cumulativa 4 para SQL Server 2017

       Atualização Cumulativa 10 para SQL Server 2014 Service Pack 2

Cada nova atualização cumulativa do SQL Server contém todas as correções de hotfixes e correções de segurança que estavam na construção anterior. Confira a mais recente atualização cumulativa do SQL Server:

Última atualização cumulativa para SQL Server 2016

Última atualização cumulativa para SQL Server 2017

últimas atualizações cumulativas para SQL Server 2014

Estado

A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".

Referências

Saiba mais sobre a terminologia que a Microsoft utiliza para descrever atualizações de software.

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.