tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Endre StĂžlsvik <>
Subject Memory leaking on [un|re]load: WebappClassLoader isn't GC'ed
Date Wed, 25 Jan 2006 13:09:59 GMT
(Apparently sent this to the wrong address first time)


I have a memory-leak.

That is, I can't start my full application and have unload-capability. If I 
"comment out" (by adding 'if (false) { ... }') large chuncks of the system, I 
manage to get it up, _and_ get it down again!

Currently, pretty much the whole application have to be commented out to enable 
webapp unloading to actually let the system be GC'ed. Both if I comment in the 
starting of WebMacro, or the "subsystem" that parses the system XML 
configuration (which uses on jdom), I can't unload.

The problem seems to be that I get a large cluster with somehow-reacable 
objects forming - all having the not-GC'ed WebappClassLoader somewhere in 

Is there any documentation out there that can give me a definitive clue? I've 
used VERY MUCH time on this problem now, and searched high and low for answers. 
I've used JProfiler and YourKit to my limit too, and still can't seem to get an 
understanding: Using the "find GC roots", I sometimes get an _elaborate_ 
diagram including lots of tomcat and sun mbean-stuff that I don't know (!), but 
often there is just an _annoying_ "other gc root" or "Other GC".

Any help appreciated.


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message