Hi,
We are getting the following outofmemory error on the Weblogic 7.0 server:
java.lang.OutOfMemoryError: unable to create new native
thread at java.lang.Thread.start(Native Method)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2125)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:404)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:344)
at weblogic.jdbc.pool.PreparedStatement.executeQuery(PreparedStatement.java:53)
at com.gm.prm.dataaccess.dao.ActionPlanDAO.getActionPlans(Unknown Source)
at com.gm.prm.service.manager.CAManager.getActionPlans(Unknown Source)
at com.gm.prm.process.web.controller.CAAction.getControlAssessmentPage(Unknown Source)
at com.gm.prm.process.web.controller.CAAction.performAction(Unknown Source)
at com.gm.prm.process.web.controller.PRMAction.perform(Unknown Source)
at org.apache.struts.action.ActionServlet.processActionPerform(ActionServlet.java:1787)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1586)
at com.gm.prm.process.web.controller.PRMServlet.process(Unknown Source)
at com.gm.prm.process.web.controller.PRMServlet.doPost(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1075)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:418)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:306)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:5533)
at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java:685)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3164)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2506)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:234)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:210)
This error occured on the production weblogic application server after the application run continuosly for 2 months. When this exception occured, a huge PL/SQL procedure was running on the database for generating the reports, and this was reducing the response time for the sql queries which was being fired from the application
Software Details:
1) Sun ONE Web Server 6.0 sp5
2) Weblogic 7.0 sp2
3) Oracle v9.2.0
4)
Java Servlets 2.3
5)
JSP 1.2
6) JDK 1.3.1_08 (Weblogic 7.0 jvm)
7)
JDBC 2.0
8) Weblogic Connection Pool, oci thick client
Hardware Details:
1) Web Server:
Sun Solaris 8
2) Application Server:
Sun Solaris 8
3) Database Server:
Sun DS
Configuration:
1) Heap Memory: -Xms56m -Xmx128m
2) No of Servers in the Clustered: 2
3) No of Queue in each server: 1
4) No of thread in default queue: 15
Regards,
Guruprasad