After several days of debugging, it turned out that in Tomcat 6.0.32, remote deployment of medium and large web applications without leakage was PermGen . I saw PermGen after populating it, and class loaders were garbage collected.
After much joy, I tried to redeploy the application without leaks in our development environment, which consists of Maven and the Jetty plugin.
Unfortunately, I seem to have hit the server limit as shown in the following screenshot
Yourkit Snapshot http://img811.imageshack.us/img811/7320/jettyclassloaderbeanelr.png
In Jetty's request streams, there is a link to BeanElResolver , which in turn has a strong link to several classes from my webapp.
I did not find a link on how to clear this information.
How to remove this latest PermGen leak from my application?
Update:
I did the following to fix this problem, no luck:
- updated to the latest version of the Jetty plugin (both 7.4.5 and 8.0.0.M3)
- used the collector CMS:
-XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled
Update 2:
source share