最近、.NET2.0および統合モードに設定されたすべてのアプリプールが起動直後にクラッシュするという問題が発生し始めました。
IISログには何も到達しませんが、HTTPERRログには毎回同じことが表示されます。
Line 2084: 2013-11-15 01:33:39 10.71.21.242 57020 192.168.16.26 80 HTTP/1.1 GET / - 129 Connection_Abandoned_By_ReqQueue test
私はDebugDiagを実行してサイトにアクセスしましたが、私が知る限り、比較的役に立たない情報をいくつか取り戻しました。
In w3wp__test__PID__5196__Date__11_14_2013__Time_03_16_34PM__253__Second_Chance_Exception_E0434352.dmp the Assembly instruction at KERNELBASE!RaiseException+3d in C:\Windows\System32\KERNELBASE.dll from Microsoft Corporation has caused a CLR Exception on thread 8
そのスレッドのスタックトレース:
Full Call Stack
Function Arg 1 Arg 2 Arg 3 Arg 4 Source
KERNELBASE!RaiseException+3d 000007fe`f9c6839c 00000000`01aed5f8 00000000`00000100 412e6d65`74737800
MSVCR110_CLR0400!_ValidateExecute+718 00000000`00000000 00000000`01aee470 00000000`00000000 00000000`00000000
ntdll!RtlRestoreContext+2e2 00000000`00000000 00000000`029b15f0 00000000`029511d0 00000000`01aeee50
clr!StrongNameTokenFromAssemblyEx+11b636 0000b6b5`b887dd2b 000007fe`00000001 00000000`01aeeeb0 00000000`01aee8e8
clr!PreBindAssemblyEx+6749 0000b6b5`b887dd2b 00000000`00000000 ffffffff`80004000 00000000`00000000
clr!CopyPDBs+8337 00000000`00bbfe20 00000000`0215cb50 000007fe`fb736a10 00000000`00000000
webengine!GetEcb+1ebe 00000000`0215cb50 00000000`010a28e8 00000000`0215cb50 00000000`00000000
webengine!GetEcb+27a1 00000000`0127e49c 00000000`00000000 00000000`00346b70 00000000`0106d520
iiscore+113f 00000000`01292648 00000000`01094c70 00000000`00000000 00000000`010a28e0
iiscore!GetProtocolManager+189eb 00000000`01094c70 00000000`00000000 00000000`00000000 00000000`01292648
iiscore+15d54 00000000`0127e494 00000000`00000012 00000000`00002710 00000000`00000000
iiscore+7cd8 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000
iiscore+a468 00000000`01292640 00000000`01291a80 00000000`01292640 00000000`00000000
iiscore+ab24 00000000`00000000 00000000`01291a20 00000000`00000000 00000000`0106b400
w3dt!UlAtqGetContextProperty+c2 00000000`0106b400 00000000`00000000 000007fe`f14f0000 00000000`0019aa90
w3dt!UlAtqGetContextProperty+8c 00000000`00000000 000007fe`fd833835 00000000`00000000 00000000`00000000
w3tp+1fba 00000000`000005ff 00000000`01291a28 000007fe`fb901080 00000000`00000000
w3tp+2024 00000000`00000000 00000000`0033fc40 00000000`0033fc40 000007fe`f14f0000
w3tp+20a1 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000
kernel32!BaseThreadInitThunk+d 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000
ntdll!RtlUserThreadStart+21 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000
クラッシュする前にプロセスに十分な速度で到達できないため、これでWinDbgを実行できません。
これらの2つの特定の設定を設定すると、これらの原因が何であるかはよくわかりません(.NET 4.0に変更するか、クラシックモードに変更すると、サイトは機能します)。
注目に値する:これは、各アプリプールで実行されているサイトとは独立して発生しています-Sitecore、Umbraco、静的サイト(hello worldアプリを含む)で発生しています
Microsoftとの長いサポートチケットの後、これは次のキーが1に設定された結果であることが判明しました。
HKLM\SOFTWARE\Microsoft\.NETFramework\OnlyUseLatestCLR
0に戻すと、問題が解決しました。