現象
Microsoft SQL Server のインスタンスに FILESTREAM 対応データベースがあることを想定しています。 トランザクションを開始し、SqlFileStream .NET API を使用して Filestream ファイルを開くと、外部要因によりタスクが失敗し、例外がスローされる場合があります。
同じトランザクションおよびコミット内で SqlFileStream を使用してファイルを再度開くと、次のような内部エラー メッセージが表示される場合があります。
注
日時、 spids、不明、エラー:5571<c/> 重大度:23<c/> 状態:3。
日時、 spids、不明、内部 FILESTREAM エラー: ガベージ コレクション テーブルにアクセスできませんでした。
dbcc checktable ('sys.filestream_tombstone_2073058421') を実行すると、次のエラー メッセージが表示される場合があります。
注
メッセージ 8951、レベル 16、状態 1、行 LineNumber
テーブル エラー: table dbcc checktable ('sys.filestream_tombstone_2073058421') (ID IDNumber)。 データ行のインデックス 'FSTSNCIdx' (IDIDNumber) に一致するインデックス行がありません。 一致するインデックス行のキーが欠落しているか無効な可能性があります。
解決策
この問題の修正プログラムは、次の SQL Server の更新プログラムに含まれています。
SQL Server 2017 の累積的な更新プログラム 13
SQL Server 2014 Service Pack 3 の累積的な更新プログラム 1
SQL Server 2014 Service Pack 2 の累積的な更新プログラム 15
SQL Server ビルドについて
SQL Server の新しいビルドには、以前のビルドであったすべての修正プログラムとセキュリティ修正プログラムが含まれています。 ご使用のバージョンの SQL Server 用の最新ビルドをインストールすることをお勧めします。
回避策
この問題を回避するには、 DBCC CHECKTABLE コマンドを使用してデータベース インデックスを再構築します。
状態
Microsoft は、これが "適用対象" セクションに記載されている Microsoft 製品の問題であることを確認しました。
参考資料
Microsoft がソフトウェア更新プログラムについて説明するために使用する標準 的な用語について説明します 。