Symptômes
Prenons l’exemple du scénario suivant :
-
Vous utilisez sp_cdc_cleanup_change_table pour gérer le processus de nettoyage de table des changements.
-
Une cadenas apparaît entre l’analyse de la capture de données de modification (CDC) et le nettoyage DES CDC quand sp_cdc_cleanup_change_table est appelé .
Dans ce scénario, l’erreur 22852 avec la gravité 10 (message d’information) se produit :
Je ne peux pas supprimer les entrées de table devenues obsolètes suite à la modification d’un ou plusieurs repères d’eau bas pour capturer des instances de base de données <DatabaseName>. L’échec s’est produit lors de l’exécution de la commande <CommandName>. L’erreur renvoyée a été <ErreurInfo> .
Utilisez l’action et l’erreur pour déterminer la cause de l’échec, puis ré-mitez la demande.
Remarque Comme il s’agit d’un message d’information, le processus de nettoyage ne échoue pas et il n’est pas possible de déterminer si le nettoyage a réussi ou échoué.
Détails sur le correctif
Pour déterminer si le nettoyage réussit ou échoue lorsque vous utilisez sp_cdc_cleanup_change_table, un paramètre de sortie facultatif (fCleanupFailed bit) est ajouté à sp_cdc_cleanup_change_table fonction. Cette opération permet de vérifier si le nettoyage des instances de capture échoue. Si la sortie fCleanupFailed est 0, tout le nettoyage réussit. Si elle est de 1, le nettoyage d’une instance de capture échoue au minimum. Voici un exemple :
-- déclaration d’une variable et définition en premier lieu sur zéro
select @cleanup_failed_bit = 0
--Execute cleanup and obtain output bit
EXEC @retcode =sys.sp_cdc_cleanup_change_table
@capture_instance = '<CaptureInstance>',
@low_water_mark = @LSN,
@threshold = 1 ,
@fCleanupFailed = @cleanup_failed_bit output
--Leverage @cleanup_failed_bit output to check the status.
Résolution
Ce problème est résolu dans les mises à jour cumulatives suivantes pour SQL Server :
Chaque nouvelle mise à jour cumulative SQL Server contient tous les correctifs et correctifs de sécurité de la build précédente. Nous vous recommandons d’installer la dernière build pour votre version de SQL Server :
État
Microsoft a confirmé l'existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.
Références
En savoir plus sur la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.