Hotfix and Security Content Publishing:
Sintomas
Assuma que ativa o Rastreio de Alterações para uma ou mais tabelas no SQL Server 2017 e definiu AUTO_CLEANUP = ON. Note que nenhuma linha é eliminada ou limpa das mesas laterais ou da tabela do sistema sys.syscommittab mesmo após o período de retenção. Além disso, nota os seguintes sintomas:
-
Se ligar utilizando a Ligação Deadministrador Dedicada e consultar a versão de limpeza inválida e endurecida, irá achá-las negativas:
selecionar * de sys.sysobjvalues onde valclass = 7 e objid = 1003 -- inválido
selecionar * de sys.sysobjvalues onde valclass = 7 e objid = 1004 -- Endurecido
-
Se executar o seguinte SP para limpar manualmentesys.syscommittab, não fará a limpeza e devolverá a versão de limpeza endurecida como negativa:
sp_flush_commit_table_on_demand executivo
Saída
O valor devolvido por change_tracking_hardened_cleanup_version() é -nnnnnnnn.
-
Se recolher uma sessão de eventos alargada com evento - change_tracking_cleanup durante a limpeza automática de alterações, notará que o CleanupStatusChange está definido para 32 (erro) e o trabalho de limpeza existe:
Estado
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".
Resolução
Este problema é corrigido na seguinte atualização cumulativa para o Servidor SQL:
Sobre atualizações cumulativas para O Servidor SQL:
Cada nova atualização cumulativa para o 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 para o Servidor SQL:
Nota Para resolver este problema, é necessário ativar o trace flag 8290 e deixar o processo de limpeza automática funcionar. Depois de ativada esta bandeira de rastreio, alterar o processo de limpeza automática de rastreio redefinirá a versão de limpeza inválida para a versão de limpeza com base no período de retenção. Esta bandeira de rastreio pode ser ativada ao nível da sessão ou ao nível do arranque. A fim de compreender a causa principal do porquê da versão de limpeza se ter tornado negativa, recomenda-se que ligue para o suporte e forneça mais detalhes.
Referências
Saiba mais sobre a terminologia que a Microsoft utiliza para descrever atualizações de software.
Bug Information:
-
Bug #: 13312017 (sqlbuvsts01)
-
Bug #: 113039 (Content Idea)
KE: v-sidong
Author:
Writer: v-sidong
Tech reviewer: tzakir; akbarf; lzhang
Editor: v-jizho