У меня проблема с некоторыми из моих приложений. Это приложение на основе wcf, работающее под IIS6 в Windows 2003 Server (x86):
В журнале событий я получаю такую ошибку из источника "W3SVC-WP" (EventID = 2262):
ISAPI 'C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll' reported itself as unhealthy for the following reason: 'Deadlock detected'.
Я пытаюсь понять, что происходит. Я настроил создание дампа для рабочего процесса-сироты, как описано в этой КБ. При возникновении тупика создается минидамп.
Затем я беру этот минидамп, чтобы попытаться понять, что произошло. Вот я застрял.
Я запускаю WinDbg x86, открываю дамп и затем:
0:037> .loadby sos clr
0:037> .sympath SRV*c:\temp\symbols*http://msdl.microsoft.com/download/symbols
Symbol search path is: SRV*c:\temp\symbols*http://msdl.microsoft.com/download/symbols
Expanded Symbol search path is: srv*c:\temp\symbols*http://msdl.microsoft.com/download/symbols
0:037> !clrstack
The version of SOS does not match the version of CLR you are debugging. Please load the matching version of SOS for the version of CLR you are debugging.
CLR Version: 4.0.30319.1
SOS Version: 4.0.30319.235
CLRDLL: C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\mscordacwks.dll:4.0.30319.235 f:8 doesn't match desired version 4.0.30319.01 f:8
CLRDLL: Loaded DLL c:\temp\symbols\mscordacwks_x86_x86_4.0.30319.01.dll\4BA1D9EF66f000\mscordacwks_x86_x86_4.0.30319.01.dll
OS Thread Id: 0x690 (37)
Unable to walk the managed stack. The current thread is likely not a managed thread.
You can run !threads to get a list of managed threads in the process
Что делать с этой ошибкой - «Версия SOS не соответствует версии CLR, которую вы отлаживаете»?
Та же ошибка («Версия SOS не соответствует версии CLR, которую вы отлаживаете») я получаю, когда открываю минидамп в VS2010.
Я прочитал этот пост - http://tech-thinker.com/Forums/tabid/62/forumid/12/postid/471/scope/posts/Default.aspx и попытался установить KB2518870. Это не помогает.