Set the hang detection policy


 

+

Search Tips   |   Advanced Search

 

The hang detection option for WAS is turned on by default. Configure a hang detection policy to accommodate the applications and environment so that potential hangs can be reported, providing earlier detection of failing servers. When a hung thread is detected, WAS notifies you so that we can troubleshoot the problem.

A common error in Java EE applications is a hung thread, which can result from a simple software defect, such as an infinite loop, or a more complex cause, for example, a resource deadlock.

System resources, such as CPU time, might be consumed by this hung transaction when threads run unbounded code paths, such as when the code is running in an infinite loop. Alternately, a system can become unresponsive even though all resources are idle, as in a deadlock scenario.

Unless an end user or a monitoring tool reports the problem, the system may remain in this degraded state indefinitely.

Use the hang detection policy, we can specify a time that is too long for a unit of work to complete.

The thread monitor checks all managed threads in the system, for example, Web container and ORB threads.

Unmanaged threads, which are threads created by applications, are not monitored.

To set thread hang detection properties, go to...

...and set...

Property Description Default
com.ibm.websphere.threadmonitor.interval Frequency (in seconds) at which managed threads in the selected appserver will be interrogated. 180 seconds (three minutes).
com.ibm.websphere.threadmonitor.threshold Length of time (in seconds) in which a thread can be active before it is considered hung.

Any thread that is detected as active for longer than this length of time is reported as hung.

600 seconds (ten minutes).
com.ibm.websphere.threadmonitor.false.alarm.threshold Number of times (T) that false alarms can occur before automatically increasing the threshold.

It is possible that a thread that is reported as hung eventually completes its work, resulting in a false alarm. A large number of these events indicates that the threshhold value is too small.

The hang detection facility can automatically respond to this situation: For every T false alarms, the threshold T is increased by a factor of 1.5. Set the value to zero (or less) to disable the automatic adjustment.

100
com.ibm.websphere.threadmonitor.dump.java Set to true to cause a javacore to be created when a hung thread is detected and a WSVR0605W message is printed.

The threads section of the javacore can be analyzed to determine what the reported thread and other related threads are doing.

False

To disable the hang detection option, set...

com.ibm.websphere.threadmonitor.interval <= zero

Restart the appserver for the changes to take effect.


Hung threads in Java EE
Example: Adjust the thread monitor to affect server hang detection