Nov 152012
 Posted by on November 15, 2012 at 3:25 pm Application Servers, Java App Servers, Oracle/BEA WebLogic Tagged with: ,  Add comments
Oracle Weblogic Server

After 2.5 hours, the LDAP provider connections do not return results and a stuck thread exception is logged, see below:

<Error> <WebLogicServer> <host_name><server_name> <[ACTIVE] ExecuteThread: ‘2’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <> <> <> <1298874440194> <BEA-000337> <[STUCK] ExecuteThread: ‘1’ for queue: ‘weblogic.kernel.Default (self-tuning)’ has been busy for “668” seconds working on the request “[email protected][
POST /MgFrontend/j_security_check HTTP/1.1
]”, which is more than the configured time (StuckThreadMaxTime) of “600” seconds. Stack trace:
Thread-21 “[STUCK] ExecuteThread: ‘1’ for queue: ‘weblogic.kernel.Default (self-tuning)'” <alive, suspended, waiting, priority=1, DAEMON> {
— Waiting for notification on: [email protected][fat lock]
^– Holding lock: [email protected][thin lock]

The LDAP server became unresponsive causing the thread/user to wait for a response or an error.

To avoid waiting too long for an error when the LDAP server is not responding, a read-timeout property can be set on an LDAP connection.

Setting read-timeout property could avoid this situation but this parameter doesn’t exist in the WLS configuration for OpenLDAP.

The only parameters in the WebLogic configuration for OpenLDAP are:

Results Time Limit
Connect Timeout

The Results Time Limit definition is the one which is more related to read-timeout.

The Results Time Limit property of the OpenLDAP Authentication provider in the WLS security configuration should be set to a higher value. For example, setting this to 30000 resolved the above issue in one user’s environment.

© Incase of any copyright infringements please check copyrights page for faster resolutions.

Leave a Reply

Show Buttons
Hide Buttons