With Tomcat 6.0.29 and Java 6u22, when I'm stopping Tomcat I'm getting the attached log, which at the end is a NullPointerException thrown from AbstractCollection#toString() which is called from clearThreadLocalMap().

java.lang.NullPointerException
        at java.util.AbstractCollection.toString(AbstractCollection.java:415)
at org.apache.catalina.loader.WebappClassLoader.clearThreadLocalMap(WebappClassLoader.java:2379) at org.apache.catalina.loader.WebappClassLoader.clearReferencesThreadLocals(WebappClassLoader.java:2304) at org.apache.catalina.loader.WebappClassLoader.clearReferences(WebappClassLoader.java:1886) at org.apache.catalina.loader.WebappClassLoader.stop(WebappClassLoader.java:1798)

Unfortunately, I can't tell what the key or value is due to this.

The web application does a GC when it unloads ZeroC's Ice runtime to ensure that all objects that implement #finialize() are properly finalized, otherwise I get even more exceptions. This is seen in Java's GC stats in the log.

Any suggestions in tracking this down? Would a custom Tomcat build that gets each key and value in a try/catch block be useful?

Regards,
Blair
Nov 22, 2010 5:49:06 PM org.apache.coyote.http11.Http11Protocol pause
INFO: Pausing Coyote HTTP/1.1 on http-8080
Nov 22, 2010 5:49:07 PM org.apache.catalina.core.StandardService stop
INFO: Stopping service Catalina
Nov 22, 2010 5:49:07 PM org.apache.catalina.core.ApplicationContext log
INFO: Closing Spring root WebApplicationContext
37.480: [GC [PSYoungGen: 1057265K->9094K(7340032K)] 
1058825K->10654K(15728640K), 0.0128710 secs] [Times: user=0.06 sys=0.00, 
real=0.01 secs] 
37.493: [Full GC (System) [PSYoungGen: 9094K->0K(7340032K)] [ParOldGen: 
1560K->10200K(8388608K)] 10654K->10200K(15728640K) [PSPermGen: 
45121K->45016K(85184K)], 0.2334650 secs] [Times: user=0.50 sys=0.01, real=0.23 
secs] 
Nov 22, 2010 5:49:12 PM org.apache.catalina.loader.WebappClassLoader 
clearReferencesThreads
SEVERE: The web application [/foobar] appears to have started a thread named 
[com.google.common.base.internal.Finalizer] but has failed to stop it. This is 
very likely to create a memory leak.
Nov 22, 2010 5:49:12 PM org.apache.catalina.loader.WebappClassLoader 
clearReferencesThreads
SEVERE: The web application [/foobar] appears to have started a thread named 
[com.google.common.base.internal.Finalizer] but has failed to stop it. This is 
very likely to create a memory leak.
Nov 22, 2010 5:49:12 PM org.apache.catalina.loader.WebappClassLoader 
clearReferencesThreads
SEVERE: The web application [/foobar] appears to have started a thread named 
[Timer-1] but has failed to stop it. This is very likely to create a memory 
leak.
Nov 22, 2010 5:49:12 PM org.apache.catalina.loader.WebappClassLoader 
clearReferencesThreads
SEVERE: The web application [/foobar] appears to have started a thread named 
[Thread-21] but has failed to stop it. This is very likely to create a memory 
leak.
Nov 22, 2010 5:49:12 PM org.apache.catalina.loader.WebappClassLoader 
clearThreadLocalMap
SEVERE: The web application [/foobar] created a ThreadLocal with key of type 
[com.sun.jna.Native$3] (value [com.sun.jna.nativ...@6197cc]) and a value of 
type [java.lang.Integer] (value [2]) but failed to remove it when the web 
application was stopped. This is very likely to create a memory leak.
Nov 22, 2010 5:49:12 PM org.apache.catalina.loader.WebappClassLoader 
clearThreadLocalMap
SEVERE: The web application [/foobar] created a ThreadLocal with key of type 
[com.sun.jna.Structure$1] (value [com.sun.jna.structur...@734d246]) and a value 
of type [java.util.HashMap] (value [{}]) but failed to remove it when the web 
application was stopped. This is very likely to create a memory leak.
Nov 22, 2010 5:49:12 PM org.apache.catalina.startup.HostConfig undeployApps
WARNING: Error while removing context [/foobar]
java.lang.NullPointerException
        at java.util.AbstractCollection.toString(AbstractCollection.java:415)
        at 
org.apache.catalina.loader.WebappClassLoader.clearThreadLocalMap(WebappClassLoader.java:2379)
        at 
org.apache.catalina.loader.WebappClassLoader.clearReferencesThreadLocals(WebappClassLoader.java:2304)
        at 
org.apache.catalina.loader.WebappClassLoader.clearReferences(WebappClassLoader.java:1886)
        at 
org.apache.catalina.loader.WebappClassLoader.stop(WebappClassLoader.java:1798)
        at org.apache.catalina.loader.WebappLoader.stop(WebappLoader.java:738)
        at 
org.apache.catalina.core.StandardContext.stop(StandardContext.java:4812)
        at 
org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:924)
        at 
org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:1319)
        at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1290)
        at 
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:323)
        at 
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
        at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1086)
        at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1098)
        at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:450)
        at 
org.apache.catalina.core.StandardService.stop(StandardService.java:587)
        at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744)
        at org.apache.catalina.startup.Catalina.stop(Catalina.java:648)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:615)
        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)
Nov 22, 2010 5:49:12 PM org.apache.coyote.http11.Http11Protocol destroy
INFO: Stopping Coyote HTTP/1.1 on http-8080

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

Reply via email to