I am working on a project that deploys a Springified web app to an already
running container (Jetty7, but I have also confirmed the same issue with Tomcat
7.0.26)
The details:
Camel 2.9.1
Apache Tomcat 7.0.26
jdk1.6.0_26
CentOS:
Linux version 2.6.18-238.el5 ([email protected]) (gcc version
4.1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Thu Jan 13 15:51:15 EST 2011
Originallly our application has many dependencies, so I started from scratch
and still get the leak.
The application is as basic as it gets- in fact it does nothing. removing the
Spring nature:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
in the web.xml file fixes this issue.
I have posted the project here:
https://github.com/drichelson/spring-camel-leaker
A Tomcat log (catalina.out) is also in the Github repo.
Of course, restarting the container fixes this problem, but ideally we would be
able to hot-reload this web app as needed.
I have profiled the container using YourKit- for each reloading of the app
there is an additional WebappClassLoader that sticks around. The Permgen usage
increases about 3MB with each reload, and by much more with our full
application loaded.
Any help is appreciated.
Thanks
Dan
This email and any files transmitted with it are confidential and intended
solely for the use of the individual or entity to whom they are addressed.
If you have received this email in error please notify the sender.
Please note that any views or opinions presented in this email are solely those
of the author and do not necessarily represent those of the company.
Finally, the recipient should check this email and any attachments for the
presence of viruses.
The company accepts no liability for any damage caused by any virus transmitted
by this email.