KB4530500 – FIX: Assertionsabbild tritt auf, wenn sp_cdc_disable_db ausgeführt wird, um CDC zu deaktivieren, oder wenn eine verteilte Transaktion nach dem ROLLBACK SAVEPOINT 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 2017 on Windows SQL Server 2019 on Windows

Symptome

Nehmen Sie folgendes Szenario an:

  • Angenommen, Sie aktivieren Change Data Mitschreiben (CDC) für eine Datenbank in der Always On Verfügbarkeitsgruppe (AG), für die DTC_SUPPORT=PER_DB in Microsoft SQL Server konfiguriert ist.
  • Sie versuchen, CDC für die Datenbank in der AG zu deaktivieren, indem Sie die gespeicherte Prozedur sp_cdc_disable_db ausführen.
  • In diesem Fall erhalten Sie möglicherweise ein Assertionsabbild, wenn der Bereinigungsauftrag bereits mit msdb.dbo.sp_delete_job abgeschlossen wurde .
  • In einer anderen Situation kann das Commit einer verteilten Transaktion oder einer datenbankübergreifenden Transaktion nach dem Ausführen von ROLLBACK SAVEPOINT ebenfalls zu einem Assertionsabbild führen.
  • Weitere Informationen finden Sie unter Konfigurieren verteilter Transaktionen für eine Always On-Verfügbarkeitsgruppe.

DateTime spid1462s * *******************************************************************************
DateTime spid1462s *
DateTime spid1462s * BEGIN STACK DUMP:
DateTime spid1462s * DateTime spid 1462
DateTime spid1462s *
DateTime spid1462s * Location: xactrm.cpp:LineNumber
DateTime spid1462s * Expression: ! (m_activeDtcRMCount == 0) || (m_preparedDtcXdesCount == m_xdesCount)

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:

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:

Referenzmaterial

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