Tuesday, October 18, 2011

Hung threads


WebSphere Application Server monitors thread activity and performs diagnostic actions if one has become inactive. When WebSphere detects that a thread has been active longer than the time defined by the thread monitor threshold, the application server takes the following actions:
Logs a warning in the SystemOut log that indicates the name of the thread that is hung and how long it has already been active. The following message is written to the log:
WSVR0605W: Thread threadname has been active for hangtime and may be hung.  There are totalthreads  threads in total in the server that may be hung.
Example:
WSVR0605W: Thread "WebContainer : 4" (0000003b) has been active for 758692 milliseconds and may be hung.  There is/are 1 thread(s) in total in the server that may be hung.
If the work actually completes, a second set of messages, notifications and PMI events is produced to identify the false alarm. The following message is written to the log:
WSVR0606W: Thread threadname was previously reported to be hung but has completed. It was active for approximately hangtime. There are totalthreads threads in total in the server that still may be hung.
Example:
WSVR0606W: Thread "WebContainer : 5" (000000ca) was previously reported to be hung but has completed.  It was active for approximately 3599854 milliseconds.  There is/are 0 thread(s) in total in the server that still may be hung.
If the thread monitor determines that too many false alarms are issued (determined by the number of pairs of hang and clear messages), it can automatically adjust the threshold. When this adjustment occurs, the following message is written to the log:
WSVR0607W: Too many thread hangs have been falsely reported.  The hang
threshold is now being set to thresholdtime.
We can prevent WebSphere Application Server from automatically adjusting the hang time threshold.
Hang thread detection option is enabled by default. You can adjust the values of the detection policy or disable it by using the below procedure.
Navigate to Servers --> Applicaiton Servers --> server_name --> administration --> custom properties

Add the following 4 custom properties

#
Property
Description
Default
A
com.ibm.websphere.threadmonitor.interval
 How frequently thread monitor should check all the managed threads for hung threads
180
B
com.ibm.websphere.threadmonitor.threshold
 After how many seconds a thread can be considered as hung
600
C
com.ibm.websphere.threadmonitor.false.alarm.threshold
The number of times that false alarms can occur before automatically increasing the threshold (T)
100
D
com.ibm.websphere.threadmonitor.dump.java
 when set to 'true', creates a java core when a hung thread is detected
false
        
Click OK and save the changes.  
Sync the changes and restart the servers for the changes to take effect.

2 comments:

  1. Hello Friend,s any one can help me here to fix the issue.

    [11/20/18 23:35:13:398 CST] 000000e9 ThreadMonitor W WSVR0605W: Thread "WMQJCAResourceAdapter : 108" (000007cf) has been active for 1062968 milliseconds and may be hung. There is/are 8 thread(s) in total in the server that may be hung.
    [11/20/18 23:38:13:398 CST] 0000002d ThreadMonitor W WSVR0605W: Thread "WMQJCAResourceAdapter : 109" (000007d0) has been active for 1076632 milliseconds and may be hung. There is/are 9 thread(s) in total in the server that may be hung.
    [11/20/18 23:38:13:399 CST] 0000002d ThreadMonitor W WSVR0605W: Thread "WMQJCAResourceAdapter : 123" (0000091b) has been active for 1064065 milliseconds and may be hung. There is/are 10 thread(s) in total in the server that may be hung.

    ReplyDelete