The Admin Server goes to "Warning" state (stuck thread error) after a couple of hours, even though there are no activities in the deployed application Oracle Enterprise Repository (OER). When OER is shutdown, the Admin Server works fine. The Admin Server goes in warning state when the managed server is started and logs show the following error:


SERVER = AdminServer MESSAGE = [STUCK] ExecuteThread: '10' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "610" seconds working on the request "weblogic.kernel.WorkManagerWrapper$1@1f9c1ae0", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
Thread-88 "[STUCK] ExecuteThread: '10' for queue: 'weblogic.kernel.Default (self-tuning)'" <alive, in native, suspended, priority=1, DAEMON> {
jrockit.net.SocketNativeIO.readBytesPinned(SocketNativeIO.java:???)
jrockit.net.SocketNativeIO.socketRead(SocketNativeIO.java:24)
java.net.SocketInputStream.socketRead0(SocketInputStream.java:???)
java.net.SocketInputStream.read(SocketInputStream.java:107)
weblogic.utils.io.ChunkedInputStream.read(ChunkedInputStream.java:149)
java.io.InputStream.read(InputStream.java:85)
com.certicom.tls.record.ReadHandler.readFragment(Unknown Source)
com.certicom.tls.record.ReadHandler.readRecord(Unknown Source)
com.certicom.tls.record.ReadHandler.read(Unknown Source)
^-- Holding lock: com.certicom.tls.record.ReadHandler@1f9dbb78[thin lock]
com.certicom.io.InputSSLIOStreamWrapper.read(Unknown Source)
sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:250)
sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:289)
sun.nio.cs.StreamDecoder.read(StreamDecoder.java:125)
^-- Holding lock: java.io.InputStreamReader@1f9c05d7[thin lock]
java.io.InputStreamReader.read(InputStreamReader.java:167)
java.io.BufferedReader.fill(BufferedReader.java:105)
java.io.BufferedReader.readLine(BufferedReader.java:288)
^-- Holding lock: java.io.InputStreamReader@1f9c05d7[thin lock]
java.io.BufferedReader.readLine(BufferedReader.java:362)
weblogic.nodemanager.client.NMServerClient.checkResponse(NMServerClient.java:287)
weblogic.nodemanager.client.NMServerClient.checkResponse(NMServerClient.java:312)
weblogic.nodemanager.client.NMServerClient.start(NMServerClient.java:93)
^-- Holding lock: weblogic.nodemanager.client.SSLClient@1f9c0e0d[thin lock]
weblogic.nodemanager.mbean.StartRequest.start(StartRequest.java:75)
weblogic.nodemanager.mbean.StartRequest.execute(StartRequest.java:45)
weblogic.kernel.WorkManagerWrapper$1.run(WorkManagerWrapper.java:63)
weblogic.work.ExecuteThread.execute(ExecuteThread.java:198)
weblogic.work.ExecuteThread.run(ExecuteThread.java:165)
}

Cause

This problem is due to misconfiguration of the Node Manager. This error can occur because the Node Manager running on the same node as the Admin server has a wrong domain directory and if the Node Manager is running with the property "startScriptEnabled=true".

Solution

Correcting the domain directory solved the issue. Please perform the following steps:
  1. Check if your domain name is correctly specified in the file nodemanager.domains (location: WL_HOME/common/nodemanager)
  2. If you are using StartScriptEnabled=true, you need to add the following to your start script:

-Dweblogic.nodemanager.ServiceEnabled=true

0 Comments