Tuesday 1 December 2009

Faulting application w3wp.exe

I have recently created a webservice in .NET 3.5. This web service interrogates native Sharepoint 2007 DLLs and basically , the duty of this web service is to provide extra funcionality for Sharepoint 2007. One of the web methods of this web service is called OverWriteFile(...), and basically overwrites files in SharePoint 2007. Everything was working fine until I start passing long files, at that point IIS went down and the "Event Viewer" in the "Application Log" showed the following message:

.NET Runtime 2.0 Error Reporting
Faulting application w3wp.exe, version 6.0.3790.3959, stamp 45d6968e, faulting module kernel32.dll, version 5.2.3790.4480, stamp 49c51f0a, debug? 0, fault address 0x0000bef7.

At the begining I did not know if it was a Sharepint issue, Sql Server (MOSS talks with SQL Server all the time), my web service or IIS. After investigating all the probabilities I realized it was a IIS bug. I checked on Google and I saw two fixes but they did not work:

http://support.microsoft.com/kb/918041/en-us

http://blogs.msdn.com/david.wang/archive/2006/03/16/Have-you-seen-a-WebEngine-dll-crash-with-ASPNet-20.aspx#552794

I finally decided to debug the process w3wp.exe to see where the problem was and reach the bottom of the problem. My surprise came when after the installation of the "debug diagnotics tool" fixed the problem. This little application actually takes full control of IIS avoiding this bug.

So to fix the above problem just go to the Microsoft Link and follow the steps for the "debug diagnotics tool" installation.

http://support.microsoft.com/default.aspx?scid=kb;EN-US;919789

Good luck with the Microsoft bug!