ADR クリーナー再試行タイムアウト (分) 構成オプション

適用対象: はいSQL Server (サポートされているすべてのバージョン)

SQL Server 2019 で導入されました。

この構成設定は、高速データベース回復に必要です。 クリーナーは、定期的に起動し、不要なページ バージョンを消去する非同期プロセスです。

場合によっては、オブジェクト レベルのロックを取得するときに、スイープ中のユーザー ワークロードとの競合が原因でクリーナーの問題が発生することがあります。 クリーナーは、このようなページを個別のリストで追跡します。 ADR クリーナーの再試行タイムアウト (既定値は 15) は、スイープを破棄する前に、クリーナーがオブジェクト ロックの取得とページのクリーンアップを排他的に再試行する時間を制御します。 中止されたトランザクションのマップで中止されたトランザクションの増加を維持するには、100% 成功したスイープの完了が不可欠です。 指定されたタイムアウトで個別のリストをクリーンアップできない場合、現在のスイープは破棄され、次のスイープが開始されます。

解説

クリーナーは SQL Server 2019 のシングル スレッドであるため、1 つの SQL Server インスタンスは一度に 1 つのデータベースで作業できます。 インスタンスに ADR が有効になっているユーザー データベースが複数存在する場合は、別のデータベースで再試行が行われている間に、1 つのデータベースでのクリーンアップが遅延する可能性があるため、タイムアウトを大きな値に増やすことはできません。

次の例は、クリーナーの再試行タイムアウトを設定します。

sp_configure 'show advanced options', 1;  
RECONFIGURE;
GO 
sp_configure 'ADR cleaner retry timeout', 15;  
RECONFIGURE;  
GO  

参照