Microsoft Knowledge Base Email Alertz

(841557) - Describes a problem where the ASP.NET worker process (Aspnet_wp.exe) restarts before the timeout setting has lapsed and an error message is logged in the application event log.

Search KbAlertz

Advanced Search

Receive Microsoft Knowledge Base articles by E-Mail?

Every night we scan the Microsoft Knowledge Base. If technologies you're interested in are updated, we'll send you an e-mail. You only get one e-mail a day, and only when new articles are added.

Click here to create a
FREE account
Already have an account?
[Click here to Login]











Microsoft Knowledge Base Article

This article contents is Microsoft Copyrighted material.
©2005-©2007 Microsoft Corporation. All rights reserved. Terms of Use | Trademarks

Article ID: 841557 - Last Review: July 7, 2004 - Revision: 1.3

The ASP.NET worker process restarts before the timeout setting has lapsed

SYMPTOMS

The Microsoft ASP.NET worker process Aspnet_wp.exe restarts or is recycled before the timeout setting that is specified in the ScriptTimeout property, the Session.Timeout attribute, the executionTimeout property, or another setting, has lapsed. The following error message is logged in the application event log:

Event Type: Error
Event Source: ASP.NET 1.0.3705.0
Event Category: None
Event ID: 1003
Date: 4/24/2002
Time: 6:18:23 PM
User: N/A
Computer: <ComputerName>
Description: aspnet_wp.exe (PID: Number) was recycled because it was suspected to be in a deadlocked state. It did not send any responses for pending requests in the last 180 seconds.

CAUSE

This problem occurs when the ASP.NET worker process has been idle for the duration that is specified in the responseDeadlockInterval configuration setting in the Machine.config file. This behavior causes the deadlock detection mechanism to restart the worker process. Then, the deadlock detection mechanism writes an error message in the application event log that indicates that the restart occurred because of a suspected deadlock state. For example, a slow write to the client may take longer than the value of the responseDeadlockInterval configuration setting in the Machine.config file.

RESOLUTION

In the <processModel> section of the Machine.config file, increase the responseDeadlockInterval configuration setting. Set a maximum value that is at least the same as your longest application-level timeout setting. You may also set the responseDeadlockInterval configuration setting to Infinite. This configuration setting affects all ASP.NET applications that run on the server. The Machine.config file is typically located in the C:\WindowsFolder\Microsoft.NET\Framework\Version\CONFIG folder.

Note Version is the version number of the Microsoft .NET Framework that you installed on your server. WindowsFolder is your Microsoft Windows folder. Typically, your Microsoft Windows folder is C:\Windows\.

To increase the responseDeadlockInterval configuration setting, follow these steps:
  1. Click Start, click Run, type notepad, and then click OK.
  2. In Notepad, click File, click Open, locate the C:\WindowsFolder\Microsoft.NET\Framework\Version\CONFIG folder, click All files in the Files of type list, click Machine.config in the file list, and then click OK.
  3. Locate the responseDeadlockInterval configuration setting in the Machine.config file, and then change the value to the one that you want.
  4. Save the Machine.config file, and then close Notepad.
The following code is the <processModel> section of the Machine.config file where the responseDeadlockInterval configuration setting appears:
<processModel enable="true|false"
              timeout="hrs:mins:secs|Infinite" 
              idleTimeout="hrs:mins:secs|Infinite"
              shutdownTimeout="hrs:mins:secs|Infinite"
              requestLimit="hrs:mins:secs|Infinite"
              requestQueueLimit="num|Infinite"
              restartQueueLimit="num|Infinite"
              memoryLimit="percent"
              cpuMask="num"
              webGarden="true|false"
              userName="username"
              password="password"
              logLevel="All|None|Errors"
              clientConnectedCheck="hrs:mins:secs|Infinite"
              responseDeadlockInterval="hrs:mins:secs|Infinite"
              responseRestartDeadlockInterval="hrs:mins:secs|Infinite"
              comAuthenticationLevel="Default|None|Connect|Call| 
                                      Pkt|PktIntegrity|PktPrivacy"
              comImpersonationLevel="Default|Anonymous|Identify|
                                     Impersonate|Delegate"
              maxWorkerThreads="num"
              maxIoThreads="num"/>

APPLIES TO
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
Keywords: 
kbprb KB841557
       

Community Feedback System

Very often, it takes hours to solve a problem. Very often, you've looked high and low, and have tried a lot of solutions. When you finally found it, chances are, it was because someone else helped you. Here's your chance to give back. Use our community feedback tool to let others know what worked for you and what didn't.

Please also understand that the community feedback system is not warranted to be correct, it's simply a system that we've built to let people try and help each other. If something in a feedback response doesn't make sense to you, or you're not comfortable making changes that the feedback talks about (like registry edits), please consult a professional.

Thank you for using kbAlertz.com Feedback System.

-- Scott Cate

Random Access - randomaccess.net NOSPAM-AT-NOSPAM gmail.com Report As Irrelevant  
Written: 12/22/2004 10:55 PM
Thanks a lot! Was taking a lot of time to figure out which setting in the web.config/machine.config should I change to get rid of the problem.

hfong Report As Irrelevant  
Written: 8/15/2005 7:23 AM
This is a machine level setting. Wondering if there's a setting at the application level for this? Thanks.