Thursday, March 12, 2009

Stuck Threads and 503 errors

Have you noticed that WebLogic 9.X and later version application becomes unavailable and returns 503 errors in situation where one or two stuck threads are reported ?


If there is no stuck thread constraints are configured, this may looks like an unexpected behavior from WebLogic part.


Unfortunately it is an undocumented and expected default behavior of the weblogic work manager.


We found this hard way by seeing this behavior in production environment and replicating it in test environments. Oracle WebLogic support has also confirmed this behavior.


Good news is that there are couples of options available to turn off this “brutal default behavior specially when you would like to see “warning” alerts in event of the one or two stuck threads instead of closing doors for all users.


1) Configure "ignore-stuck-threads" for WebLogic work manager. Configure your monitoring infrastructure to send alert on desired number of stuck threads.

2) Configure stuck thread constraints explicitly to implement predictable application behavior under desired stuck thread configuration.

Labels: