Freigeben über


Validieren von Partitionsinformationen für einen Mergesubscriber

Wenn Sie einen parametrisierten Zeilenfilter für eine Merge-Publikation definieren, verwenden Sie eine Funktion, die auf Abonnenteninformationen verweist, wie z. B. den Anmeldenamen des Abonnenten. Standardmäßig überprüft die Replikation Abonnenteninformationen basierend auf dieser Funktion vor jeder Synchronisierung und wann immer eine Momentaufnahme beim Abonnenten angewendet wird. Durch den Überprüfungsprozess wird sichergestellt, dass Die Daten für jeden Abonnenten ordnungsgemäß partitioniert werden. Das Überprüfungsverhalten wird durch die validate_subscriber_info Publikationseigenschaft gesteuert, die mithilfe von sp_changemergepublication (Transact-SQL) oder auf der Seite " Abonnementoptionen " des Dialogfelds "Publikationseigenschaften " geändert werden kann. Weitere Informationen zum Ändern von Publikationseigenschaften finden Sie unter "Publikationseigenschaften anzeigen und ändern".

Funktionsweise der Partitionsüberprüfung

Wenn eine Publikation gefiltert wird, z. B. mithilfe der Funktion SUSER_SNAME(), wendet der Merge-Agent den anfänglichen Schnappschuss auf jeden Abonnenten basierend auf Daten an, die für den Ausdruck SUSER_SNAME() gültig sind.

Wenn die Validierung aktiviert ist, überprüft der Merge-Agent beim nächsten Verbinden des Abonnenten mit dem Publisher für die Synchronisierung die Informationen beim Abonnenten und stellt sicher, dass die Partition jedes Abonnenten mit der in der anfänglichen Momentaufnahme empfangenen Partition identisch ist. Für jede nachfolgende Zusammenführungs- oder Momentaufnahmeanwendung überprüft der Merge-Agent die Partition jedes Abonnenten.

Wenn der Zusammenführungs-Agent erkennt, dass die im Filterausdruck verwendete Funktion einen anderen Wert zurückgibt als bei der ersten Momentaufnahme, schlägt die Zusammenführungs- oder Momentaufnahmeanwendung fehl, und das Abonnement des Abonnenten erfordert möglicherweise eine erneute Initialisierung. Eine Erneute Initialisierung kann erforderlich sein, um Probleme zu vermeiden, die auftreten können, wenn die Zusammenführungseinstellungen eines Abonnenten geändert werden, aber es reicht möglicherweise aus, informationen beim Abonnenten zu ändern, z. B. den Anmeldenamen, zurück zum Wert, der zum Zeitpunkt der ursprünglichen Momentaufnahme verwendet wird.

Wenn der Zusammenführungs-Agent eine Partition überprüft, kontrolliert der Agent zusätzlich zur Überprüfung der Partition anhand der von den Funktionen zurückgegebenen Werte, die in Filterausdrücken verwendet werden, auch, ob die Momentaufnahme vor Änderungen generiert wurde, die sie ungültig machen könnten, wie z. B. Metadatenbereinigungsvorgänge oder Schemaänderungen. Wenn eine partitionierte Momentaufnahme zu alt ist, gibt der Zusammenführungs-Agent einen Fehler zurück, und Sie müssen eine partitionierte Momentaufnahme für diesen Abonnenten basierend auf einer aktuellen regulären Momentaufnahme neu generieren.

Siehe auch

Häufig gestellte Fragen für Replikationsadministratoren
Bewährte Methoden für die Replikationsverwaltung
Erneutes Initialisieren von Abonnements
Überprüfen replizierter Daten