One of our applications hosted on
Tomcat 6.0.18 has started throwing these errors. From what I've read, this is usually solved by patching memory leaks or increasing the amount of heap space available to Tomcat on startup.
The problem is that I have already configured Tomcat to have 1 GB of memory available and this application will cause these errors to be thrown when less than 300 MB is being used. Also, the errors are thrown in a couple of seconds, which doesn't seem like it'd be enough time for this server to use up all that memory.
I have monitored Tomcat's memory usage on the server with Task Manager while these errors are happening and I can tell the memory usage doesn't change much. Any clue what might be happening?
I've included two of the errors below... I'm not sure how helpful this will be:
Jun 16, 2009 11:58:21 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for
servlet toolservlet threw exception
java.lang.OutOfMemoryError:
Java heap space
at com.esri.sde.sdk.client.s$a_.o(Unknown Source)
at com.esri.sde.sdk.client.s$a_.f(Unknown Source)
at com.esri.sde.sdk.client.SeCoordinateReference.h(Unknown Source)
at com.esri.sde.sdk.client.SeCoordinateReference.f(Unknown Source)
at com.esri.sde.sdk.client.SeLayer.c(Unknown Source)
at com.esri.sde.sdk.client.SeLayer.a(Unknown Source)
at com.esri.sde.sdk.client.SeLayer.read(Unknown Source)
at com.esri.sde.sdk.client.s$a_.a(Unknown Source)
at com.esri.sde.sdk.client.s.a(Unknown Source)
at com.esri.sde.sdk.client.b.a(Unknown Source)
at com.esri.sde.sdk.client.SeLayer.getInfo(Unknown Source)
at com.esri.sde.sdk.client.SeLayer.<init>(Unknown Source)
at com.esri.sln.ss.core.search.SdeSearchEngine.searchTheme(SdeSearchEngine.java:62)
at com.esri.sln.ss.core.map.tool.SdeIdentify.useTool(SdeIdentify.java:138)
at com.esri.sln.ss.core.servlet.ToolServlet.performPost(ToolServlet.java:170)
at com.esri.sln.ss.core.servlet.BaseServlet.doPost(BaseServlet.java:138)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:419)
at org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:378)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1509)
at java.lang.Thread.run(Unknown Source)
Jun 16, 2009 11:58:33 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet toolservlet threw exception
java.lang.OutOfMemoryError: Java heap space