0

ASP.NET ソリューションを 4.0 にアップグレードした後、アプリケーション プールが自動的に (1740 分ごとに) リサイクルされるたびに、ちょうど 32 秒後にイベント ログにイベント ID 5009 のエラーが記録されることに気付きました。

サーバーにデバッガーをインストールし、クラッシュ ダンプに対して分析ツールを実行しました。以下に、取得した内容を示します。何が問題なのかを理解するのを手伝ってもらえますか? これは、4 台の異なるマシン (たまたま仮想マシン) で発生しています。完全なコール スタックで「ループ」が発生していることに気付きました (スペースの都合上、ここでは割愛します)。次のコール グループが何度も繰り返されています。

clr!Thread::DoAppropriateWaitWorkerAlertableHelper+4d 00000000 00000000 000000001bb30ba0 00000000 20a0cf60 0000000000000000
clr!Thread::DoAppropriateWaitWorker+146 00000000 1bb30ba0 0000000000000001 00000000 01c05970 0000000000000000
clr!Thread::DoAppropriateWait+73 00000000 20a0c0a0 0000000000000001 000007fe e4736ca9 000007fee4736c2c
clr!CLREvent::WaitEx+c1 00000000 00000000 0000000000000000 00000000 00000000 000007fee7e7f960
clr! Regmeta :: SavetoStream+134 00000000 20a0b740 000000001BB30BA0 00000000 dc951994 0000000076DF0E4A
CLR!WAIDFORENDOFSHUTDOWN+ 00010000 000007fe9000000 E7804B65 00000000 000000000000000000000000
CLR!スレッド:: 490 0000007FE e4a8cca0 0000000020A0B900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dc951994 00000000
clr!EEHashTableBase,0>::FindItem+5c 000007fe e4a8cca0 0000000020a0b9f0 00000000 00000001 000007feefbc229b
clr!IsCerRootMethod+b1 00000000 00000001 0000000000000000 00000000 00000000 00000000ffffff98
clr!TAStackCrawlCallBack+1e9 00000000 20a0bd90 0000000020a0b9f0 00000000 20a0bd90 0000000020a0bd90
clr!Thread::MakeStackwalkerCallback+2f 00000000 20a0c2a0 0000000000000002 00000000 00000002 0000000020a0c060
clr!Thread:: StackWalkFramesEx+8d 00000000 1bb30ba0 000000001bb30ba0 00000000 1bb30ba0 0000000000020019
clr!スレッド::ReadyForAsyncException+197 00000000 76f471ba 000000001bb30ba0 00000000 00000000 0000000000000000
clr!スレッド::HandleThreadAbort+6c 00000000 76def5e4 000007fee4da00091bb30ba0 00000000
clr!Thread::HandleThreadInterrupt+7e 00000000 000007c0 00000000000007c0 000007fe e79ae71c 000007fee4d9f9dc

分析概要
タイプ 説明 推奨エラー w3wp_ QAWEB4 _PID_ 4668 _Date__05_02_2012__Time_04_16_30PM_ 242 _Second_Chance_Exception_C0000005.dmp clr!CLREvent::WaitEx+f のアセンブリ命令 Microsoft Corporation\clr.dll から C:\Windows\Microsoft.NET\Framework64\v4.0.30319 にあるスレッド 20 でメモリ位置 0x20990ff0 に書き込もうとすると、アクセス違反の例外 (0xC0000005) が発生しました C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll については、ベンダーの Microsoft Corporation に連絡してください。

情報 DebugDiag は、このダンプ ファイル (w3wp_ QAWEB4 _PID_ 4668 _Date__05_02_2012__Time_04_16_30PM_ 242 _Second_Chance_Exception_C0000005.dmp) がクラッシュ ダンプであると判断し、ハング分析を実行しませんでした。クラッシュ ダンプのクラッシュとハングの組み合わせ分析を有効にする場合は、Globals.asp スクリプト (DebugDiag\Scripts\inc フォルダーにある) を編集し、g_DoCombinedAnalysis 定数を True に設定します。

分析の詳細

w3wp_ QAWEB4 _PID_ 4668 _Date__05_02_2012__Time_04_16_30PM_ 242 _Second_Chance_Exception_C0000005.dmp のレポート 実行された分析の種類 クラッシュ分析 マシン名 XXXX01-QA-WEB01 オペレーティング システム Windows Server 2008 Service Pack 2 プロセッサ数
プロセス ID 4668 プロセス イメージ 3\Windows .exe システム アップタイム 4 日 14:59:36 プロ​​セス アップタイム 00:06:32

スレッド 20 - システム ID 4364 エントリ ポイント clr!Thread::intermediateThreadProc 作成時刻 2012 年 5 月 2 日 4:10:16 PM ユーザー モードで費やされた時間 0 日 0:0:1.421 カーネル モードで費やされた時間 0 日 0:0: 0.453

.NET コール スタック

関数 System.Threading.Thread.SleepInternal(Int32) System.Threading.Thread.Sleep(System.TimeSpan) Sitecore.Services.Heartbeat.WorkLoop() *エラー: モジュールのロードは完了しましたが、Sitecore.Kernel.dll のシンボルをロードできませんでしたSystem.Threading.ExecutionContext.runTryCode(System.Object) System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode、CleanupCode、System.Object) System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext、System.Threading.ContextCallback、 System.Object, Boolean) System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object) System.Threading.ThreadHelper.ThreadStart()

スペース上の理由により、コール スタック全体が削除されました

例外情報 CLR!CLREVENT::WAITEX+FIn w3wp_ QAWEB4 _PID_ 4668 _Date__05_02_2012__Time_04_16_30PM_ 242 _Second_Chance_Exception_C0000005.dmp clr!CLREvent::WaitEx+f in C:\Windows\Microsoft.NET\Framework64\0r3.dll.dll のアセンブリ命令Microsoft Corporation のスレッド 20 でメモリ位置 0x20990ff0 に書き込もうとすると、アクセス違反例外 (0xC0000005) が発生しました。

モジュール情報 イメージ名: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll シンボル タイプ: PDB ベース アドレス: 0x00000003 00000000 コメント: Flavor=Retail COM DLL: False 会社名: Microsoft Corporation ISAPIExtension: False ファイル説明: Microsoft .NET ランタイム共通言語ランタイム - WorkStation ISAPIFilter: False ファイル バージョン: 4.0.30319.239 (RTMGDR.030319-2300) マネージ DLL: False 内部名: clr.dll VB DLL: False 法的著作権: © Microsoft Corporation. 全著作権所有。読み込まれた画像の名前: clr.dll 法的商標:00905a4d Time Stamp: Sat Jul 09 05:44:20 2011
Checksum: 0x00000000

マッピングされたイメージ名: 元のファイル名: clr.dll モジュール名: clr プライベート ビルド: DDBLD205 シングル スレッド: False 製品名: Microsoft® .NE​​T Framework モジュール サイズ: 9.39 MBytes 製品バージョン: 4.0.30319.239 シンボル ファイル名: c:\symcache\ clr.pdb\887DDF30473443C9905C3217115D7DE72\clr.pdb 特別ビルド: &

スクリプトの概要
スクリプト名 ステータス エラー コード エラー ソース エラーの説明 ソース行 CrashHangAnalysis.asp 完了

4

1 に答える 1

0

イベント ID 5009 の説明に記載されているエラー コードは何ですか? http://www.eventid.net/display-eventid-5009-source-Microsoft-Windows-WAS-eventno-8833-phase-1.htmは、以前の .Net バージョンの空のフォルダーが原因である可能性があることを示しています。

于 2012-05-03T13:48:03.720 に答える