Error:
<Error> <HTTP Session> <Machine> <PIA> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1383913301180> <BEA-100025> <An unexpected error occurred in HTTP session timeout callback while deleting sessions.
java.lang.OutOfMemoryError: unable to create new native thread
Possible Cause:
This problem is caused by a lot of Jolt threads being spawned on the web server. This can happen if users are closing their browsers without logging off, or if new sessions are rapidly being created because of cookie problems or interference by other network devices.
Solution:
First reported on HPUX, about 1800 threads were being spawned, each thread was taking 512K memory. Along with a heap of 700M this accounted for almost 1600MB of space, which did not leave much for the JVM and its libraries from the 2GB addressable space.
The following tuning should be done to optimize and timeout these threads:
1. Decrease heap size to 512m, or less to JAVA_OPTIONS in setEnv.sh (setEnv.cmd). If running as a service on Windows, delete and reinstall the service.
2. Set tuxedo_network_disconnect_timeout in your web profile. Set this to be more than the highest "Service Timeout" value in psappsrv.cfg on the AppServer, but less than the Session Timeout period in your web profile.
3. Reduce Jolt Client Cleanup Timeout in the Application Server configuration from 60 minutes to 15 minutes. You will have to reconfigure the Application Server Domain for this change to take effect.
4. Add "-Xss256k" to JAVA_OPTIONS in setEnv.sh (setEnv.cmd). If running as a service on Windows, delete and reinstall the service.
Before attempting this resolution, make sure that the error is not caused by a real shortage of kernel threads, check your OS documentation on how to configure and monitor kernel threads.
See Note 608218.1 E-AS: Application Server and Web Server Kernel Parameters for UNIX and Linux Operating Systems
No comments:
Post a Comment