tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Thomas <ma...@apache.org>
Subject Re: 100% CPU Usage when stopping Tomcat after OOM condition
Date Tue, 03 May 2011 14:36:52 GMT
On 03/05/2011 15:22, Christopher Schultz wrote:
> All,
> 
> Moments ago in our development environment, our webapp suffered an OOME
> after many re-reployments (we know we have an undeploy-related leak).
> When attempting to bounce Tomcat, the shutdown failed and I took a
> thread dump which included the one non-trivial thread shown below.
> 
> I haven't looked at the code yet to see if there is some kind of loop
> around this code, but top reported 100% CPU usage from this process so I
> suspect something like that was happening.
> 
> We are using TC 6.0.32 on Debian Lenny and Sun/Oracle 32-bit
> 1.6.0_22-b04 Server VM.
> 
> This is less of a "help" request as it is an observation of an
> unfortunate situation: the OOME is clearly the real problem and has
> nothing to do with Tomcat itself. Unfortunately, after the OOME, Tomcat
> was unable to shut down gracefully and that could be a problem in and of
> itself.

After an OOME there are no guarantees as to the state of the JVM. That
Tomcat is unable to shut down cleanly in that case is not suprising.

Mark

> 
> Thanks,
> -chris
> 
> Stack trace hung during shutdown:
> 
> "main" prio=10 tid=0x08059400 nid=0x7da1 runnable [0xb7276000]
>    java.lang.Thread.State: RUNNABLE
>         at java.lang.Class.getDeclaredFields0(Native Method)
>         at java.lang.Class.privateGetDeclaredFields(Class.java:2291)
>         at java.lang.Class.getDeclaredFields(Class.java:1743)
>         at
> org.apache.catalina.loader.WebappClassLoader.clearReferencesStaticFinal(WebappClassLoader.java:2034)
>         at
> org.apache.catalina.loader.WebappClassLoader.clearReferences(WebappClassLoader.java:1929)
>         at
> org.apache.catalina.loader.WebappClassLoader.stop(WebappClassLoader.java:1833)
>         at
> org.apache.catalina.loader.WebappLoader.stop(WebappLoader.java:740)
>         at
> org.apache.catalina.core.StandardContext.stop(StandardContext.java:4913)
>         - locked <0xb01a3e68> (a org.apache.catalina.core.StandardContext)
>         at
> org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:932)
>         at
> org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:1357)
>         at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1328)
>         at
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:326)
>         at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
>         at
> org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1094)
>         - locked <0xb01a3cf0> (a org.apache.catalina.core.StandardHost)
>         at
> org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1106)
>         - locked <0xb0220538> (a org.apache.catalina.core.StandardEngine)
>         at
> org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:468)
>         at
> org.apache.catalina.core.StandardService.stop(StandardService.java:604)
>         - locked <0xb0220538> (a org.apache.catalina.core.StandardEngine)
>         at
> org.apache.catalina.core.StandardServer.stop(StandardServer.java:788)
>         at org.apache.catalina.startup.Catalina.stop(Catalina.java:662)
>         at org.apache.catalina.startup.Catalina.start(Catalina.java:629)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
>         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org





---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message