> From: Darryl Pentz [mailto:djpe...@yahoo.com] 
> Subject: Re: Tracking down OOM - PermGen using jmap and jhat
> 
> I found this thread: 
> http://forum.springframework.org/printthread.php?t=21383&pp=40

There's a lot of real BS in that thread.  There is one accurate and useful 
statement:

"What it boils down to is Tomcat's classloader not releasing objects that CGLIB 
holds in ThreadLocal variables during redeployment"

The classloader cannot, of course, release such objects - it has no knowledge 
of them.  It really is a CGLIB problem, since it's failing to null out 
ThreadLocal values at the end of processing each request; such behavior is 
antisocial, at best.

Solving this problem would be difficult in any container using thread pooling.  
If CGLIB provides some means of cleaning up after itself, you might be able to 
write a filter that runs at the end of each request to make the necessary calls.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY 
MATERIAL and is thus for use only by the intended recipient. If you received 
this in error, please contact the sender and delete the e-mail and its 
attachments from all computers.

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

Reply via email to