Hotfix and Security Content Publishing: 113140
現象
SQL Server 2017 で1つ以上のテーブルの変更の追跡を有効にしていて、 AUTO_CLEANUP = ON に設定していることを前提とします。 サイドテーブルまたは sys committab システムテーブルから、行の削除またはクリーンアップが行われていないことに注意してください。 保持期間。 さらに、次の現象が発生します。
-
専用の管理接続を使用して接続し、クリーンアップの無効なバージョンについてクエリを実行した場合は、負の値が表示されます。
valclass = 7 と objid = 1003-----------------------------------
valclass = 7 と objid = 1004-----------------------------------
-
次の SP を実行して、手動での syscommittab のクリーンアップを行うと、クリーンアップは実行されず、セキュリティ強化されたクリーンアップのバージョンが負の値として返されます。
exec sp_flush_commit_table_on_demand
出力
Change_tracking_hardened_cleanup_version () によって返される値は-nnnnnn です。
-
変更履歴の自動クリーンアップ中に、イベント change_tracking_cleanup の拡張イベントセッションを収集すると、CleanupStatusChange が 32 (エラー) に設定され、クリーンアップ作業が存在することがわかります。
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。
解決方法
この問題は、SQL Server の次の累積的な更新プログラムで修正されています。
SQL Server の累積更新プログラムについて:
SQL Server 用の新しい累積更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の累積的な更新プログラムを確認します。
注: この問題を解決するには、トレースフラグ8290を有効にし、自動クリーンアップ処理を実行できるようにする必要があります。 このトレースフラグを有効にすると、変更履歴の自動クリーンアッププロセスによって、保持期間に基づいて、無効なクリーンアップバージョンがクリーンアップバージョンにリセットされます。 このトレースフラグは、セッションレベルまたはスタートアップレベルで有効にすることができます。 ために クリーンアップバージョンが否定的になった理由の根本原因を理解するには、サポートに連絡して、詳細を提供することをお勧めします。
参照情報
マイクロソフトでソフトウェア更新プログラムの説明に使用する用語集を参照してください。
Bug Information:
-
Bug #: 13312017 (sqlbuvsts01)
-
Bug #: 113039 (Content Idea)
KE: v-sidong
Author:
Writer: v-sidong
Tech reviewer: tzakir; akbarf; lzhang
Editor: v-jizho