Hi, I hope someone can help me. I am new to tomcat and I have been encountering issues where a particular tomcat instance/s are having large thread count during load testing and results in a hung state. The error shown on the browser is: java.lang.OutOfMemoryError: unable to create new native thread (stack trace attached)
Environment: OS: Windows 2003 64 bit JDK 1.5 8GB Total Machine RAM 4 Tomcat 5.5 instances running as a service on one Physical Server (each Tomcat configured to use 1.5GB of Heap) 4 instances x 1.5GB = 6GB of Heap 4 Identical servers configured the same way and load balanced IIS Web Server front end (AJP Port configured) no maxThreads property is set on server.xml for AJP port declaration. Per documentation ( http://tomcat.apache.org/tomcat-5.5-doc/config/ajp.html), if no value is set maxThreads are set to 200 Not all 4 servers are experiencing this problem. 1. Any ideas how I can resolve/isolate this problem? 2. I know I need to do a thread dump but I am not familiar on how to analyze thread dumps from Tomcat. Can you point me to documententation on how I can analyze thread dumps from Tomcat? 3. Also, can someone confirm if the thread dumps from JDK 1.5 are the same as the Thread Dumps from a JDK 1.6? I seem to be getting different formats. Can someone just confirm? 4. If the maxThread is set to 200, why are the Tomcat instances utilizing up to 400 Threads (see screenshot) Regards, Tomcat Novice
java.lang.OutOfMemoryError: unable to create new native thread at java.lang.Thread.start0(Native Method) at java.lang.Thread.start(Thread.java:574) at java.util.Timer.(Timer.java:137) at java.util.Timer.(Timer.java:106) at com.hp.ov.sm.client.common.communications.HeartBeat.(HeartBeat.java:68) at com.hp.ov.sm.client.common.communications.SOAPClient.connect(SOAPClient.java:237) at com.hp.ov.sm.client.webtier.WebClient.connect(WebClient.java:95) at com.hp.ov.sm.client.webtier.WebController.init(WebController.java:599) at com.hp.ov.sm.client.webtier.WebControllerServlet.index(WebControllerServlet.java:448) at com.hp.ov.sm.client.webtier.WebControllerServlet.process(WebControllerServlet.java:366) at com.hp.ov.sm.client.webtier.WebControllerServlet.processHTTPRequest(WebControllerServlet.java:317) at com.hp.ov.sm.client.webtier.WebControllerServlet.doGet(WebControllerServlet.java:255) at javax.servlet.http.HttpServlet.service(HttpServlet.java:627) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.compressionFilters.CompressionFilter.doFilter(CompressionFilter.java:203) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:286) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265) at com.hp.ov.cwc.web.CacheControlFilter.doFilter(CacheControlFilter.java:70) at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275) at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149) at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:835) at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:640) at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1286) at java.lang.Thread.run(Thread.java:595)
--------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org