ASP .NET 2.0 – IIS worker process terminating unexpectedly. Event ID: 1009 – The process exit code was ‘0xc0000005’

|  Posted: July 8, 2008  |  Categories: General Technical

I’m in the process of migrating biztalk247.com to a new hosting provider. After deploying the application, I started doing the performance testing using Visual Studio Web/Load test features. I configured the IIS Application Pool to have a web garden (more than one worker process w3wp.exe) to serve the incoming requests. The application pool also got settings to recycle the worker process after certain usage of virtual memory/physical memory.

During the test, once the virtual/physical memory limit is reached, the worker process will recycle. As soon as this occurs I started noticing entries in the eventlog with following warning message

A process serving application pool ‘biztalk247’ terminated unexpectedly. The process id was ‘12308’. The process exit code was ‘0xc0000005’. (Event ID: 1009)

and an error message

Faulting application w3wp.exe, version 6.0.3790.3959, stamp 45d6968e, faulting module unknown, version 0.0.0.0, stamp 00000000, debug? 0, fault address 0x001f0001. (Event ID 1000)

Eventually after few of these errors, IIS Application pool will shut down and started getting 503 Service Unavailable.

After doing a bit of research I found this KB article really useful. According to this article, whenever a worker process shuts down it writes some information to the registry at the following location HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices<ASP.NETVersion>Names and there is not enough permission to do so. I checked the location in the server and to my surprise I can’t see the “Names” key. I created it manually and tried to assign the permission to IIS_WPG group as described in the KB article, but as soon as I right-click and select “Permissions” I got some kind of warning message saying the list is not in the order (“I didn’t capture the exact error message”).

For me it looks like ASP .NET 2.0 is not configured correctly. So I decided to uninstall and install ASP.NET 2.0 using the aspnet_regiis (-u and -i switch) to be on the safe side, since its the early stages of deployment.

After doing so, I right clicked on the “Names” key and didn’t see any warnings.

I reran the test again, this time the worker process shutdown properly without any warnings/errors. Looking at the registry revealed ASP.NET has written some values under the key “Names” as shown in the picture below.

asp.net registry editor

Nandri!

Saravana

Author: Saravana Kumar

Saravana Kumar is the Founder and CTO of BizTalk360, an enterprise software that acts as an all-in-one solution for better administration, operation, support and monitoring of Microsoft BizTalk Server environments.

One Platform Operations, Monitoring and Analytics Software
BizTalk360

microsoft biztalk

Learn more

Over 500 customers across 30+ countries depend on BizTalk360

ServiceBus360

Azure service bus

Learn more

Start managing your Azure Service Bus namespaces in minutes

One Platform - Operations, Monitoring and Analytics Software
BizTalk360

microsoft biztalk

Learn more

Over 500 customers across 30+ countries depend on BizTalk360

One Platform - Operations, Monitoring and Analytics Software
ServiceBus360

Azure service bus

Learn more

Start managing your Azure Service Bus namespaces in minutes

Back to Top