現象
次のような状況を考えます。
-
インデックスの変更を実行するとしています.オンラインMicrosoft SQL Server 2012 または SQL Server 2014 にクエリします。
-
デッドロックまたは kill コマンドを実行して、クエリをキャンセルするなど、ユーザーによる操作により、このクエリは中止されます。
このシナリオでは、インデックスのメタデータを使用する必要があるすべての DML 操作はブロックするか、または完了するまで時間がかかります。
さらに、次の現象が発生する可能性があります。
-
立ち、 sys.dm_exec_requestsの動的管理ビュー (DMV) のクエリを実行するときにPWAIT_MD_RELATION_CACHEまたはMD_LAZYCACHE_RWLOCKの値が高い待機の種類
-
Sys.dm_os_spinlock_stats DMV をクエリすると、SOS_RW の値が高い待機の種類
この問題は、通常すべて新しい DML クエリがゆっくりと同期オブジェクトを消去するときに発生するロック コンボイとして確認できます。同期オブジェクトの待機している性質上、CPU 使用率は限定されています。
解決策
累積的な更新プログラムの情報
問題は、SQL Server の次の累積的な更新プログラムで最初に修正されました。
SQL Server 2014 用の累積的な更新プログラム 1/en-us/help/2931693
SQL Server 2012 SP1 用の累積的な更新プログラム 9/en-us/help/2931078
SQL Server 用の新しい累積的な更新プログラムには、以前の累積的な更新プログラムに含まれていた、すべての修正プログラムおよびすべてのセキュリティ更新プログラムが含まれています。以下で、SQL Server 用の最新の累積的な更新プログラムを確認してください。
修正プログラムの情報
サポートされている修正プログラムは、マイクロソフトから入手可能です。ただし、この修正プログラムは、ここで説明する問題のみを修正することを目的としたものです。この問題が発生しているシステムにのみ適用してください。
修正プログラムをダウンロードできる場合は、本サポート技術情報の資料の上部に「修正プログラムをダウンロードできます」というセクションがあります。このセクションが表示されていない場合は、マイクロソフト カスタマー サービス サポートにリクエストを送信し、修正プログラムを入手してください。