sys.sp_xtp_checkpoint_force_garbage_collection (Transact-SQL)
適用対象: SQL サーバー
マージ操作で使用されるソース ファイルをログ シーケンス番号 (LSN) でマークします。その後は不要になり、ガベージ コレクションを実行できます。 また、 sys.sp_xtp_checkpoint_force_garbage_collection
は、関連する LSN がログ切り捨てポイントより低いファイルを FILESTREAM ガベージ コレクションに移動します。
sys.sp_xtp_force_gcとは対照的に、メモリ内エンジンは、プロセスによってまだ解放されていないガベージ コレクションの対象となるメモリ内データの削除された行に関連するメモリを解放します。
構文
sys.sp_xtp_checkpoint_force_garbage_collection
[ [ @dbname = ] 'database_name' ]
[ ; ]
引数
[ @dbname = ] 'database_name'
ガベージ コレクションが実行されるデータベース。 既定値は現在のデータベースです。 @dbname は sysname です。
リターン コードの値
0
成功を収めます。 エラーの場合は 0 以外。
結果セット
返される行には次の情報が含まれます。
列 | 説明 |
---|---|
num_collected_items |
FILESTREAM ガベージ コレクションに移動されたファイルの数を示します。 これらのファイルのログ シーケンス番号 (LSN) が、ログ切り捨てポイントの LSN 未満です。 |
num_marked_for_collection_items |
LSN がログ末尾 LSN のログ ブロック ID で更新されたデータ/デルタ ファイルの数を示します。 |
last_collected_xact_seqno |
ファイルが FILESTREAM ガベージ コレクションに移動された最後の対応する LSN を返します。 |
解説
別のシステム ストアド プロシージャ ( sys.sp_xtp_force_gc
) を使用して、ガベージ コレクションを手動でトリガーできます。 sys.dm_xtp_system_memory_consumersでメモリクリーンアップの減少を観察できます。
SQL Server 2022 (16.x) では、 sys.dm_xtp_system_memory_consumers 動的管理ビューによって、 メモリ最適化 tempdb メタデータに固有の分析情報が改善されました。
アクセス許可
db_owner 固定データベース ロール内でメンバーシップが必要です。
例
tempdb
データベースのガベージ コレクションに不要なソース ファイルをマークするには、次のサンプル スクリプトを使用します。
EXEC sys.sp_xtp_checkpoint_force_garbage_collection N'tempdb';