Created attachment 605887 [details] Tomcat log describing slow shut down process that does not end. Scenario ======== * 1 Tomcat node: server.xml ---------- <Listener className="org.jboss.modcluster.container.catalina.standalone.ModClusterListener" loadMetricClass="org.jboss.modcluster.load.metric.impl.BusyConnectorsLoadMetric" loadMetricCapacity="1" loadHistory="9" loadDecayFactor="2" stickySession="true" stickySessionForce="false" stickySessionRemove="true" advertise="true" advertiseGroupAddress="224.0.1.105" advertisePort="23364" excludedContexts="ROOT,manager,docs,examples,host-manager" /> * 1 httpd balancer mod_cluster.conf ---------------- MemManagerFile "/root/workspace/jboss-ews-2.0/httpd/cache/mod_cluster" # MOD_CLUSTER_ADDS # Adjust to you hostname and subnet. <IfModule manager_module> Listen 6666 <VirtualHost dell-pe1950-05.rhts.eng.brq.redhat.com:6666> <Directory /> Order deny,allow Deny from all Allow from all </Directory> KeepAliveTimeout 60 MaxKeepAliveRequests 0 ServerAdvertise on AdvertiseFrequency 5 ManagerBalancerName qacluster AdvertiseGroup 224.0.1.105:23364 EnableMCPMReceive <Location /mcm> SetHandler mod_cluster-manager Order deny,allow Deny from all Allow from all </Location> </VirtualHost> </IfModule> * *100* simple JSP applications are being deployed as 100 different contexts.OK. * Every single one of these contexts is accessed by a client via balancer exactly once. Response code is HTTP 200, OK. * Tomcat is being shut down via *shutdown.sh* * Tomcat does not shut down, NOT OK :-( Furthermore, as you may see at the bottom of the attached log, connectors are being stopped, yet, the tomcat process does not shut down...
Default: stopContextTimeout 10 stopContextTimeoutUnit TimeUnit.SECONDS Docs: "The amount of time, measured in units specified by stopContextTimeoutUnit, indicating how long to wait for a clean shutdown of a context (completion of pending requests for a distributable context or destruction/expiration of active sessions for a non-distributable context)." So..if the client destroyed each session, tomcat would not have been waiting 10 seconds for each of the 100 contexts :-) Anyhow, the problem holds: Even after this 100x10 seconds time, the Tomcat does not shut down...
Get a thread dump of the cat when it is hanging.
Created attachment 606483 [details] Thread dump at the end of catalina.out. Adding a thread dump. 1)start 2)deploy 100 contexts 3)access contexts 4)shutdown.sh 5)process hangs forever
EDIT: FYI - the amount of contexts deployed affects only connectors. The Tomcat6 itself does not shutdown even with 1 context deployed. I am escalating this bug to URGENT.
JIRA: https://issues.jboss.org/browse/JBPAPP-9788
Closed, because https://issues.jboss.org/browse/JBPAPP-9788 is closed now