KB4575939 - FIX: Protokollleser-Agent generiert Zugriffsverletzungsausnahme für P2P- oder Transaktionsreplikation mit Partitionierungstabellen in SQL Server

Gilt für
SQL Server 2016 Service Pack 2 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2019 on Windows SQL Server 2017 on Windows

Symptome

Angenommen, Sie verfügen über eine Peer-to-Peer (P2P)- oder Transaktionsreplikation für partitionierte Tabellen in Microsoft SQL Server. Wenn Sie einen Partitionswechsel oder einen Zusammenführungsvorgang ausführen, der ausstehende replizierte Befehle in dieser Partition enthält, bemerken Sie den folgenden Fehlereintrag im SQL Server Fehlerprotokoll:

Hinweis

Fehler: 608: In der Datenbank < "DatabaseName>" wurde kein Katalogeintrag für die Partitions-ID-ID>< gefunden. Die Metadaten sind inkonsistent. Führen Sie DBCC CHECKDB aus, um nach einer Beschädigung von Metadaten zu suchen.

Darüber hinaus generiert der Protokolllese-Agent ein Speicherabbild von Zugriffsverletzungen.

Status

Microsoft hat bestätigt, dass dies ein Problem bei den Microsoft-Produkten ist, die im Abschnitt „Gilt für“ aufgeführt sind.

Lösung

Dieses Problem wurde in den folgenden kumulativen Updates für SQL Server behoben:

Hinweis Wenn Sie nach dem Anwenden dieses Fixes einen Partitionswechsel- oder Zusammenführungsvorgang mit ausstehenden replizierten Befehlen in dieser Partition ausführen, werden Sie weiterhin den Fehler 608 im SQL Server-Fehlerprotokoll beobachten, aber keine Speicherabbilder von Zugriffsverletzungen.

Informationen zu kumulativen Updates für SQL Server:

Jedes neue kumulative Update für SQL Server enthält alle Hotfixes und Sicherheitsfixes, die im vorherigen kumulativen Update enthalten waren. Sehen Sie sich die neuesten kumulativen Updates für SQL Server an:

Weitere Informationen

Wenn Sie den Partitionswechsel auf SQL Server 2008 R2 über die aktuelle Version aktivieren, benötigen Sie möglicherweise in naher Zukunft auch Aufteilungs- und Zusammenführungsvorgänge. Stellen Sie vor dem Ausführen eines Split- oder Mergevorgangs für eine replizierte Tabelle sicher, dass die betreffende Partition keine ausstehenden replizierten Befehle enthält. Sie sollten außerdem sicherstellen, dass während der Aufteilungs- und Zusammenführungsvorgänge keine DML-Vorgänge auf der Partition ausgeführt werden. Wenn es Transaktionen gibt, die der Protokollleser nicht verarbeitet hat, oder wenn DML-Vorgänge auf einer Partition einer replizierten Tabelle ausgeführt werden, während ein Teilungs- oder Zusammenführungsvorgang ausgeführt wird (mit derselben Partition), kann dies zu einem Verarbeitungsfehler beim Protokolllese-Agent führen. Um den Fehler zu beheben, ist möglicherweise eine Neuinitialisierung des Abonnements erforderlich.

Weitere Informationen finden Sie unter Replizieren partitionierter Tabellen und Indizes.

Warnung

Sie sollten den Partitionswechsel für Peer-to-Peer-Publikationen nicht aktivieren, da die Spalte verborgen ist, die zum Erkennen und Lösen von Konflikten verwendet wird.

Referenzmaterial

Informieren Sie sich über die Terminologie, die Microsoft zum Beschreiben von Softwareupdates verwendet.