現象
オンライン インデックスの再構築は、同時実行のクエリでは、Microsoft SQL Server 2012 または Microsoft SQL Server の 2014 の多くの行を変更すると使用されているインデックスの破損またはデータの損失を発生することが。たとえば、オンライン インデックス構築が同じテーブルに同時に実行されているときに、レプリケーションがテーブルの多数の行を更新します。
この問題は、次の条件に該当する場合に発生します。
-
オンライン インデックス構築クエリを並列モードで実行します。
-
デッドロック エラーと「ロック タイムアウト」などの致命的なエラーが、特定の順序で発生します。
注 この問題を解決するには、オンライン インデックス構築をシリアル モードで実行します (DOP = 1)。
解決策
累積的な更新プログラムの情報
問題は、SQL Server の次の累積的な更新プログラムで最初に修正されました。
SQL Server 2012 SP1 用の累積的な更新プログラム 11/en-us/help/2975396
SQL Server 2012 SP2 用の累積的な更新プログラム 1/en-us/help/2976982
SQL Server 2014 用の累積的な更新プログラム 2/en-us/help/2967546
SQL Server 用の新しい累積的な更新プログラムには、以前の累積的な更新プログラムに含まれていた、すべての修正プログラムおよびすべてのセキュリティ更新プログラムが含まれています。以下で、SQL Server 用の最新の累積的な更新プログラムを確認してください。
SQL Server 2012 の修正プログラムの情報サポートされている修正プログラムは、マイクロソフトから入手可能です。ただし、この修正プログラムは、ここで説明する問題のみを修正することを目的としたものです。この問題が発生しているシステムにのみ適用してください。
修正プログラムをダウンロードできる場合は、本サポート技術情報の資料の上部に「修正プログラムをダウンロードできます」というセクションがあります。このセクションが表示されていない場合は、マイクロソフト カスタマー サービス サポートにリクエストを送信し、修正プログラムを入手してください。