On Windows 7, Event error 1000: Faulting application name: w3wp.exe ... Faulting module name: ntdll.dll ... #57
Description
ANCM graceful shutdown feature has a problem on Windows 7 OS if an aspnetcore app is hosted to IIS web server. After starting the aspnetcore app, stopping or recycling an IIS worker process which is used by the aspnetcore web application can cause a crash to the worker process (w3wp.exe).
When the crash happens, you will see as an event viewer error.
ID: 1000
Source: Application Error
Faulting application name: w3wp.exe
...
Faulting module name: ntdll.dll
...
NOTE:
- This issue does not happen on neither Windows 8 nor Windows 10 OS
- There is a work-around way. If users stop the backend process (dotnet.exe) of the aspnetcore app manually before stopping IIS worker process, there is no problem.
- If you attach debugger such as windbg.exe to the worker process, the exception stack information will be like this.
0:022> g
(a8c.a00): Unknown exception - code c000070a (first chance)
(a8c.a00): Unknown exception - code c000070a (!!! second chance !!!)
ntdll!TppWaiterpThread+0x7f7:
00000000`76dfcf99 448bc3 mov r8d,ebx
0:001> kn
Child-SP RetAddr Call Site
00 0000000000a3f5b0 00000000
76b9652d ntdll!TppWaiterpThread+0x7f7 [d:\win7sp1_gdr\minkernel\threadpool\ntdll\waiter.c @ 1397]
01 0000000000a3f850 00000000
76dcc541 kernel32!BaseThreadInitThunk+0xd [d:\win7sp1_gdr\base\win32\client\thread.c @ 65]
02 0000000000a3f880 00000000
00000000 ntdll!RtlUserThreadStart+0x1d [d:\win7sp1_gdr\minkernel\ntos\rtl\rtlexec.c @ 3203]
Thanks,
Jeong Hwan Kim