Нет управляемого потока в дампе, созданном осиротевшим пулом приложений IIS 64-разрядного ASP.NET

Мне нужно найти причину для события с кодом 2262, обнаружена тупиковая ситуация в нашем приложении ASP.NET (64-разрядная версия). На нашем сервере разработки это происходит 1-3 раза в день.

Я создал мини-дамп с полной памятью, отключив пул приложений, как описано здесь: http://support.microsoft.com/kb/828222

Я открыл дамп с помощью windbg и попытался найти управляемый поток: ~ * e! Clrstack

Я получил для всех потоков: Невозможно пройти управляемый стек. Текущий поток, вероятно, не является управляемым потоком. Вы можете запустить! Thread, чтобы получить список управляемых потоков в процессе.

Тот же результат я получаю, когда беру дамп из командной строки (выполняя ту же команду, для которой настроено сиротство).

Стоит ли брать или просматривать дамп по-другому?

Чтобы заставить windbg работать, я выполняю следующие команды: .load c: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ mscorwks.dll .load c: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ mscordacwks.dll. загрузить c: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ sos.dll .symfix "c: \ Program Files \ Debugging Tools for Windows (x64) \ cache" .cordll -ve -u -l

И у меня в папке dbg tools есть следующая dll: mscordacwks_AMD64_X64_2.0.50727.3603.dll (взято из каталога Framework64).

Я попытался изучить все наши журналы и не нашел никаких коррелированных данных с отметками времени сбоя тупиковой ситуации. Я просмотрел и подчеркнул код, введенный в svn, в день первого тупика и за несколько дней до этого - во время стресса тупика не произошло.

Я ставлю на стек clr, спасибо за любую помощь, Ян


person HonzaCZE    schedule 20.11.2009    source источник


Ответы (1)


Вы загрузили SOS, чтобы можно было отлаживать управляемый код? Для .NET 4 синтаксис:

.loadby sos clr
person Thomas Bratt    schedule 11.01.2011