適用対象:SQL Server
詳細
属性 | 値 |
---|---|
製品名 | SQL Server |
イベント ID | 844 |
イベント ソース | MSSQLSERVER |
コンポーネント | SQLEngine |
シンボル名 | BUFLATCH_TIMEOUT_CONTINUE |
メッセージ テキスト | バッファー ラッチの待機中にタイムアウトが発生しました。型 %d、bp %p、ページ %d:%d、統計 %#x、データベース ID: %d、アロケーション ユニット ID: %I64d%ls、タスク 0x%p: %d、waittime %d 秒、フラグ 0x%I64x、所有タスク 0x%p。 待機を続行します。 %ls |
説明
SQL プロセスが、ラッチの獲得を待機しています。 この問題は、I/O 操作の完了までに時間がかかりすぎている場合に生じることがあります。 このタイプのエラーは、他のタスクによってシステム プロセスがブロックされた結果に生じることが普通です。 場合によっては、ハードウェア障害が原因でこのエラーが発生する可能性があります。 このエラー メッセージが発生すると、コンピューターと SQL Server が応答を停止する場合があります。
原因
このエラー メッセージは、ご利用のシステムの全体的な環境によって異なります。 次のいずれかの状況では、過剰なシステムが発生する可能性があります。
- 入出力 (I/O) とメモリのニーズを満たしていないハードウェア
- 不適切に構成およびテストされた設定
- 非効率的な設計
システムの負荷が高く、ワークロードの需要を満たさない場合、エラー 844 が発生する可能性があります。 負荷の高い環境の一般的な原因には、次のようなものがあります。
- ハードウェアの問題
- 圧縮されたボリューム
- 既定以外の SQL Server 構成設定
- 非効率的なクエリまたはインデックスの設計
- データベースの自動拡張または自動圧縮操作が頻繁に発生する
ユーザー アクション
このエラーを回避するには、次の操作を試してみます。
ハードウェアにボトルネックがあるかどうかを判断します。 適切な開始場所については、「 ボトルネックの特定 」を参照してください。 必要に応じて、ご利用の環境の構成、クエリ、負荷のニーズに合わせてハードウェアをアップグレードしてください。
すべてのハードウェアが正しく機能していることを確認します。 記録されたエラーを確認し、ハードウェア ベンダーの提供する診断を実行します。 エラー ログまたはイベント ログで、関連する I/O エラーがないか調べます。 通常、I/O エラーはディスクに障害があることを示しています。
ディスク ボリュームが圧縮されていないことを確認します。 圧縮ドライブにデータ ファイルとログ ファイルを格納することはサポートされていません。 データベース ファイルとファイル グループに関するページを参照してください。 圧縮ドライブのサポートの詳細については、次の記事を参照してください。 圧縮ボリュームでの SQL Server データベースのサポートの説明
次のすべての SQL Server 構成オプションをオフにすると、エラー メッセージが消えるかどうかを確認します。
クエリをチューニングして、システムで使用するリソースを削減します。 パフォーマンス チューニングは、システムの負荷を軽減し、個々のクエリの応答時間を改善するのに役立ちます
autoshrink プロパティを OFF に設定すると、データベース サイズに対する変更のオーバーヘッドが軽減されます
自動拡張プロパティを、頻度の低い十分な大きさの増分に設定してください。 ジョブをスケジュールしてデータベース内の使用可能な領域を確認し、ピーク外の時間帯にデータベース サイズを増やします。
応答していないタスクや他の重大なエラーがないか、エラー ログで調べます。 根底にある問題の根本原因を示している場合があるため、これらのエラーを先に解決してください。
アサートなどの重大なエラーが頻繁に発生する場合は、これらの問題を解決してください。
844 エラー メッセージの頻度が低い場合は、エラーを無視できます。