Slow start after inactivity timeout and errors after continuous use
Who is this article for?All Userswanting to understand inactivity timeouts and errors after continuous use.
App Server Administration access is required.
This article addresses the issue of slow starts after inactivity timeout and errors that may arise after prolonged continuous use. It explains why these issues occur and helps you enhance the performance and reliability of your system, ensuring a seamless user experience.
1. Issue
Users sometimes notice that if they have the application open for a while but are inactive, there will be a noticeable delay the next time they click on an icon or select a record.
In addition, on rare occasions during normal use of the system, a user might see the following error:
The message could not be processed. This is most likely because the action 'www.pentana.com/Tng/ServiceInterface/TngService/ExecuteGets' is incorrect or because the message contains an invalid or expired security context token or because there is a mismatch between bindings.
2. Server Process Inactivity Timeout
The process that runs on the server will go to sleep after a period of inactivity, which by default is set to 20 minutes. This means that if there are no active users (for either the desktop or web applications) for a set period of time, this worker process will stop.
In the server's Event Viewer, this message appears in the System Log:
A worker process with process id of '1234' serving application pool 'Pentana' was shutdown due to inactivity. Application Pool timeout configuration was set to 20 minutes. A new worker process will be started when needed.
The next time a user does something in the application, the process has to wake up before it can do any work. This causes the delay that the user sees.
We do not recommend making changes to this value.
3. Process Maximum Lifetime
The process that runs on the server has a pre-configured maximum lifetime, which by default is set to 29 hours (this is the IIS Application Pool recycling Regular Time Interval).
This means that if the service is in constant use for 29 hours, without any inactivity that allows the process to sleep and restart as described in the section above, the maximum lifespan will be hit and the process will restart automatically.
The end user will see an error message like this:
The message could not be processed. This is most likely because the action 'www.pentana.com/Tng/ServiceInterface/TngService/ExecuteGets' is incorrect or because the message contains an invalid or expired security context token or because there is a mismatch between bindings. The security context token would be invalid if the service aborted the channel due to inactivity. To prevent the service from aborting idle sessions prematurely increase the Receive timeout on the service endpoint's binding.
In the application server's Event Viewer, in the System Log, the following message will appear:
A worker process with process id of '1234' serving application pool 'Pentana' has requested a recycle because the worker process reached its allowed processing time limit.
A user browsing to the service endpoint at server.domain.com/PentanaPRD/Service/TngService.svc may sometimes see the following error:
An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is:
System.InvalidOperationException: An exception was thrown in a call to a policy export extension.
Extension: System.ServiceModel.Channels.SymmetricSecurityBindingElement
Error: An exception was thrown in a call to a policy export extension.
Extension: System.ServiceModel.Channels.SymmetricSecurityBindingElement
Error: Specified argument was out of the range of valid values.
Parameter name: suite ----> System.InvalidOperationException: An exception was thrown in a call to a policy export extension.
Extension: System.ServiceModel.Channels.SymmetricSecurityBindingElement
Error: Specified argument was out of the range of valid values.
Parameter name: suite ----> System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
worker process with process id of '1234' serving application pool 'Pentana' has requested a recycle because the worker process reached its allowed processing time limit.
It is unusual to see this error because most systems are not in continuous use, normally the application pool has a chance to timeout due to inactivity.
If this error does occur for you, consider changing the Recycling, then Regular Time Interval property of the Pentana application pool.