ASP.NET Deadlocks

  • Thread starter Thread starter Martin Blackstone [MVP - Exchange]
  • Start date Start date
M

Martin Blackstone [MVP - Exchange]

We are seeing a lot of errors like the one below which when occur
essentially lock up the ability to run the applications.
I have browsed the support articles and they all seem to apply to the 1.0
framework and advise a hotfix to correct the issue. But we are running the
1.1 Framework.

The articles suggest changing the timing of the responseDeadlockInterval
setting, but don't say whether to increase it or decrease it.
So which is it?

Any help would be greatly appreciated.


Event Type: Error
Event Source: ASP.NET 1.1.4322.0
Event Category: None
Event ID: 1003
Date: 8/22/2003
Time: 2:53:32 PM
User: N/A
Computer: WEBSERVER
Description:
aspnet_wp.exe (PID: 3208) was recycled because it was suspected to be in a
deadlocked state. It did not send any responses for pending requests in the
last 300 seconds. This timeout may be adjusted using the <processModel
responseDeadlockInterval> setting in machine.config.

--
Martin Blackstone
MVP - Exchange

http://www.swinc.com/resource/exchange.htm


http://www.swinc.com/resource/e2kfaq_appxc.htm
 
responseDeadlockInterval:

Specifies the time interval, in standard process model format (hr:min:sec),
after which the process will be restarted if the following conditions are
met:
a.. There are queued requests.
b.. There has not been a response during this interval.
The default is 3 minutes.
 
Decrease it, may be you are going the wrong way.

Martin Blackstone said:
OK, so call me dense, but does that mean I should increase the time? We have
it cranked up to 5 minutes now.
The problem is that once we get that error, the ASPNET service is hung and I
have to issue an IISReset to get it going again.

Also, is this a development issue (bad code), or a Windows issue?

--
Martin Blackstone
MVP - Exchange

http://www.swinc.com/resource/exchange.htm


http://www.swinc.com/resource/e2kfaq_appxc.htm
 
Are you doing something inside ASP.NET code that you expect to be taking a
long time? If this is the case, increasing the responseDeadlockInterval
will be the most direct solution, though changing the requests processing
architecture so that a client isn't left waiting for > 3 minutes for a
response is probably a better option.

If you aren't doing anything that should be taking a long time, you probably
have a real thread deadlock, and you need to identify it and fix it. The
PAP group has produced a great document on ASP.NET debugging [1] to solve
problems like this. For deadlocks, you can add a DWORD value called
UnderDebugger to the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET key, and
when this is set to 1, recycling will be disabled, which allows an Attach to
Process on aspnet_wp.exe to occur.

[1]
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/DBGrm.asp


Nick Wienholt, MVP
Maximizing .NET Performance
http://www.apress.com/book/bookDisplay.html?bID=217
Sydney Deep .NET User Group www.sdnug.org
 
Back
Top