La synchronisation bidirectionnelle dans Data Transmission Service (DTS) prend uniquement en charge la synchronisation directe entre deux instances. Elle ne prend pas en charge la synchronisation en cascade : les données synchronisées de l'instance A vers l'instance B ne sont pas propagées à l'instance C. La configuration d'une topologie à trois instances entraîne une perte de données.
Comment la perte de données se produit
Lorsque DTS synchronise des données entre deux instances, il identifie chaque transaction à l'aide de tables de transactions. Ce marquage empêche la boucle de données, c'est-à-dire qu'il évite que les données déjà synchronisées ne reviennent vers la source. Dans une topologie à trois instances, ce même mécanisme bloque l'acheminement des données vers la troisième instance.
Le diagramme suivant illustre le problème.

Dans le diagramme :
Lorsque DTS synchronise les données de la base de données 1 vers la base de données 2, la transaction est marquée. Les enregistrements de données marqués ne sont pas synchronisés avec la base de données 3, ce qui provoque une perte de données dans la base de données 3.
Lorsque DTS synchronise les données de la base de données 3 vers la base de données 2, la base de données 1 est également exclue, ce qui entraîne une perte de données dans la base de données 1.
Solution
Ne configurez pas de tâche de synchronisation similaire au scénario de synchronisation à trois instances décrit ci-dessus.