Prévention des erreurs d’insertion et de mise à jour dans Réplication de données d'instance

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 2 minutes de lecture
  • Vous pouvez empêcher les échecs d’insertion et de mise à jour dans Réplication de données d'instance (Analyse de l'intégrité des journaux) en spécifiant un filtre de nom de classe dans le jeu de réplication du producteur.

    Important :
    Cette rubrique s’applique uniquement aux ensembles de réplication du créateur créés avant la Utah mise en production.

    Lorsque vous répliquez une table parente et une ou plusieurs tables enfants, vous devez ajouter un filtre sys_class_name à la table parente dans l’entrée sortante de votre jeu de réplications du créateur. Si le filtre sys_class_name est manquant, les échecs d’insertion et de mise à jour apparaissent dans Réplication de données d'instance > Erreur de charge de réplication dans les scénarios suivants :

    • Un échec d’insertion se produit lorsqu’un enregistrement de la table enfant est répliqué, car le système tente deux insertions avec le même sys_id dans la table parente. L’ajout du filtre sys_class_name au parent empêche la violation de clé unique lors de l’insertion dans la table parente.
    • Un nouvel enregistrement est ajouté à une table enfant répliquée sur l’instance du producteur. Réplication de données d'instance (Analyse de l'intégrité des journaux) crée initialement l’enregistrement dans la table parente sur le consommateur, mais pas dans la table enfant. Si l’enregistrement enfant est modifié sur l’instance du créateur, un échec de mise à jour se produit sur la table enfant de l’instance du consommateur pendant la réplication, car l’enregistrement existe uniquement dans la table parente.

    Si la table est un parent, décidez si vous souhaitez répliquer l’une de ses tables enfants.

    • Si vous souhaitez répliquer une ou plusieurs tables enfants, vous devez identifier la valeur de sys_class_name pour la table parente, puis ajouter un filtre sys_class_name correspondant à la table parente.

      Par exemple, Type de tâche est l’étiquette de sys_class_name sur la table Tâche [task]. Pour commencer à répliquer les incidents en plus des tâches, vous devez ajouter [Type de tâche] [est] [Tâche] à l’entrée sortante de la table Tâche [task].

    • Si vous souhaitez uniquement reproduire la table parente, le filtre est facultatif.
    • Si la table parente est déjà répliquée, vous devez modifier la table parente et ajouter le filtre sys_class_name.

    Si la table est enfant, décidez si vous souhaitez reproduire son parent.

    • Si vous souhaitez également répliquer la table parente, vous devez identifier la valeur sys_class_name pour la table parente, puis ajouter un filtre sys_class_name correspondant à la table parente.

      Par exemple, Type de tâche est l’étiquette de sys_class_name sur la table Tâche [task]. Pour commencer à répliquer des tâches en plus des incidents, vous devez ajouter [Type de tâche] [est] [Tâche] à l’entrée sortante de la table Tâche [task].

    • Si vous souhaitez uniquement reproduire la table enfant, le filtre est facultatif.
    • Si une ou plusieurs tables enfants sont déjà répliquées, vous devez ajouter le filtre sys_class_name au parent.