Problembehandlung bei falschen Konflikten bei der Zusammenführungsreplikation

12

Wir haben SQL Server 2008 R2 Merge Replication eingerichtet.

In letzter Zeit habe ich angefangen, Konflikte für einige Tabellen zu bekommen, und wenn ich die Konfliktanzeige überprüfe, kann ich sehen, dass die Spaltenwerte für Gewinner und Verlierer identisch sind!

Ich bin sicher, dass diese Daten nur von einem Abonnenten eingegeben werden.

Früher sp_showrowreplicainfohabe ich mehr Details über die in Konflikt stehende Zeile erhalten und 2 Zeilen: eine für den Verleger und eine für den Abonnenten, wobei beide Zeilen die "Version" 1 haben.

Ich habe auch Brandons Methode implementiert: Änderungen in der Mergereplikation überwachen , aber es wurde nur eine normale Einfügung angezeigt!

Würden Sie mir bitte sagen, wie ich anfangen soll, diese Art von Konflikt zu beheben?

Adel Khayata
quelle

Antworten:

1

Ich habe hier auf Database Administrators von Brandon Williams eine solide Antwort auf Ihre Frage gefunden :

Problembehandlung bei einem SQL Server Merge-Replikationskonflikt

Brandon sagte:

Sie müssen die Konfliktanzeige überprüfen und die Konflikttypen und die widersprüchlichen Zeilenwerte beobachten. Zu beachten ist, dass in der Spalte Konfliktsieger die Werte der Gewinnreihe angezeigt werden, die aus den Basistabellen abgerufen werden. Wenn Sie darüber nachdenken, sind diese Werte flüchtig und können sich ändern. Beachten Sie daher, dass die Werte in der Spalte "Konfliktsieger" möglicherweise nicht die Werte sind, die sie zum Zeitpunkt des Konflikts waren. In der Spalte Conflict Loser werden die verlorenen Zeilenwerte angezeigt, die aus der Tabelle MSmerge_conflict_publication_article abgerufen werden, und diese Werte sind statisch.

Wenn Sie die Hauptursache für die Konflikte nicht mit der Konfliktanzeige ermitteln können, müssen Sie möglicherweise ein Überwachungsschema implementieren. Ich habe ein Beispiel bereitgestellt, wie dies in Überwachen von Änderungen in der Zusammenführungsreplikation durchgeführt wird .

Es besteht eine geringe Wahrscheinlichkeit, dass Sie falsche Konflikte erhalten, aber bei der Prüfung sollte sich herausstellen, ob dies der Fall ist oder nicht.

Jim Ziegmann
quelle