Hotfix and Security Content Publishing: 113140

Sintomas

Suponha que você habilite o controle de alterações para uma ou mais tabelas no SQL Server 2017 e defina AUTO_CLEANUP = ativado. Você percebe que nenhuma linha é excluída ou limpada em tabelas do lado ou na tabela do sistema sys. syscommittab mesmo após o período de retenção. Além disso, você observa os seguintes sintomas:

  1. Se você se conectar usando uma conexão de administrador dedicada e consulta a limpeza inválida e a versão de limpeza otimizada, elas serão negativas:

    Selecione * de sys. sysobjvalues onde valclass = 7 e objID = 1003--inválido

    Selecione * de sys. sysobjvalues onde valclass = 7 e objID = 1004--Fortalecited

  2. Se você executar o SP a seguir para limpar o sys. syscommittab manualmente, ele não fará a limpeza e retornará a versão de limpeza de proteção avançada como negativo:

    sp_flush_commit_table_on_demand exec

    Saída

    O valor retornado por change_tracking_hardened_cleanup_version () é-nnnnnn.

  3. Se você coletar sessão de evento estendido com change_tracking_cleanup de evento durante a limpeza automática do controle de alterações, você notará que o CleanupStatusChange está definido como 32 (erro) e o trabalho de limpeza existe:Capture.PNG

Status

A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".

Resolução

Esse problema foi corrigido na seguinte atualização cumulativa do SQL Server:

Sobre atualizações cumulativas do SQL Server:

Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança incluídas na atualização cumulativa anterior. Confira as atualizações cumulativas mais recentes do SQL Server:

Observação Para resolver esse problema, você precisa habilitar o sinalizador de rastreamento 8290 e permitir que o processo de limpeza automática seja executado. Depois que esse sinalizador de rastreamento estiver habilitado, o processo de limpeza de controle de alterações redefinirá a versão de limpeza inválida para limpar a versão com base no período de retenção. Esse sinalizador de rastreamento pode ser habilitado no nível da sessão ou no nível de inicialização. Para entender a causa raiz do motivo pelo qual a versão de limpeza se tornou negativa, é recomendável que você chame o suporte e forneça mais detalhes.

Referências

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

Bug Information:

KE: v-sidong

Author: 

Writer: v-sidong

Tech reviewer: tzakir; akbarf; lzhang

Editor: v-jizho

Precisa de mais ajuda?

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Microsoft Insider

Estas informações foram úteis?

Qual é o seu grau de satisfação com a qualidade da tradução?
O que afetou sua experiência?

Obrigado por seus comentários!

×