Sintomas
Considere o seguinte cenário:
-
Você está usign Microsoft SQL Server 2016.
-
Você tem uma tabela temporal que é particionada antes ou durante a ativação do controle de versão do sistema.
-
Uma tabela de histórico criada automaticamente (anônimo ou padrão) está configurada.
-
Você desativou o controle de versão do sistema e, em seguida, executa uma instrução ALTER TABLE SWITCH PARTITION na tabela de histórico.
Nesse cenário, você recebe um erro de asserção semelhante ao seguinte:
MSG 3624, nível 20, estado 1, LineNumber Falha na verificação da declaração do sistema. Verifique o log de erros do SQL Server para obter detalhes. Geralmente, uma falha de asserção é causada por um bug de software ou corrupção de dados. Para verificar se há corrupção do banco de dados, considere executar DBCC CHECKDB. Se você concordou em enviar despejos para a Microsoft durante a instalação, um mini despejo será enviado à Microsoft. Uma atualização pode estar disponível na Microsoft no Service Pack mais recente ou em um hotfix do suporte técnico. MSG 596, nível 21, estado 1, LineNumber Não é possível continuar a execução porque a sessão está no estado eliminar. MSG 0, nível 20, estado 0, LineNumber Ocorreu um erro grave no comando atual. Os resultados, se houver, devem ser descartados.
Resolução
A correção para esse problema está incluída nas seguintes atualizações:
-
Atualização cumulativa 3 para SQL Server 2016 Service Pack 1
-
Atualização cumulativa 6 para SQL Server 2016
Cada compilação nova do SQL Server 2016 contém todos os hotfixes e todas as correções de segurança que foram incluídas na compilação anterior. Recomendamos que você instale a versão mais recente do SQL Server 2016.
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft que estão listados na seção "Aplicável a".
Referências
Saiba mais sobre a terminologia usada pela Microsoft para descrever atualizações de software.