MSSQLSERVER_844

適用対象: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、待機時間 %d、フラグ 0x%I64x、所有しているタスク 0x%p。 待機を続行します。

説明

SQL プロセスが、ラッチの獲得を待機しています。 この問題は、I/O 操作の完了までに時間がかかりすぎている場合に生じることがあります。 このタイプのエラーは、他のタスクによってシステム プロセスがブロックされた結果に生じることが普通です。 場合によっては、ハードウェア障害が原因でこのエラーが生じることもあります。 このエラー メッセージが表示された場合、コンピューターと SQL Server が応答を停止している可能性があります。

原因

このエラー メッセージは、ご利用のシステムの全体的な環境によって異なります。 次のような環境では、システムの負荷が過剰になる可能性があります。

  • 入出力 (I/O) とメモリのニーズを満たしていないハードウェア
  • 不適切に構成およびテストされた設定
  • 非効率的な設計

システムの負荷が高く、ワークロードの要求を満たせない場合、エラー 844 が発生することがあります。 負荷の高い環境の一般的な原因には、次のようなものがあります。

  • ハードウェアの問題
  • 圧縮されたボリューム
  • 既定以外の SQL Server の構成
  • 非効率的なクエリまたはインデックスの設計
  • 頻繁なデータベースの AutoGrow または AutoShrink 操作

ユーザーの操作

このエラーを回避するには、次の操作を試してみます。

  • ハードウェアにボトルネックがあるかどうかを判断します。 開始するには、「ボトルネックの特定」を参照してください。 必要に応じて、ご利用の環境の構成、クエリ、負荷のニーズに合わせてハードウェアをアップグレードしてください。

  • すべてのハードウェアが正しく機能していることを確認します。 記録されたエラーを確認し、ハードウェア ベンダーの提供する診断を実行します。 エラー ログまたはイベント ログで、関連する I/O エラーがないか調べます。 通常、I/O エラーはディスクに障害があることを示しています。

  • ディスク ボリュームが圧縮されていないことを確認します。 データおよびログ ファイルを圧縮ドライブに格納することはできません。「データベース ファイルとファイル グループ」を参照してください。 圧縮されたドライブのサポートについては、次の記事を参照してください: 「圧縮されたボリュームでサポートされていない SQL Server データベース」。

  • 次の SQL Server 構成オプションをすべてオフにするとエラーメッセージが消えるかどうかを確認します。

  • クエリをチューニングして、システムで使用するリソースを削減します。 パフォーマンス チューニングは、システム負荷の削減と、個々のクエリの応答時間改善に役立ちます

  • AutoShrink プロパティをオフにして、データベース サイズに対する変更のオーバーヘッドを軽減します

  • AutoGrow プロパティに、頻繁になりすぎないように十分な大きさを持った増分値を設定するようにします。 データベース内で使用可能な領域を確認するジョブをスケジュールし、ピーク時以外にデータベース サイズを大きくします。

  • 応答していないタスクや他の重大なエラーがないか、エラー ログで調べます。 根底にある問題の根本原因を示している場合があるため、これらのエラーを先に解決してください。

  • アサートなどの重大なエラーが頻繁に発生する場合は、その問題を解決します

  • 844 エラー メッセージが頻繁に発生しない場合は、エラーを無視してかまいません