現象
SQL Server 2016 のメモリ最適化表では、ほとんどの ALTER table シナリオが並列で実行されるため、トランザクションログへの書き込みが最適化されました。 ただし、並列で実行される大きなメモリ最適化テーブルで列操作を変更すると、データが失われる可能性があります。 注:ALTER TABLE 操作は single スレッドで実行され、この問題の影響を受けません。
解決方法
この問題は、SQL Server の次の累積的な更新プログラムで最初に修正されました。
SQL Server 用の新しい累積更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の累積的な更新プログラムをダウンロードしてインストールすることをお勧めします。
回避策
この問題を回避するには、トレースフラグ9909を有効にして、alter 操作のログ最適化を無効にします。 トレースフラグ9909を有効にするには、 -T9909 スタートアップパラメーターを追加します。 または、特定のセッションに対して dbcc traceon (9909) ステートメントを使用することができます。
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。
関連情報
ソフトウェアの更新を説明するために Microsoft が使用する 用語 について説明します。