> From: Leon Rosenberg [mailto:rosenberg.l...@googlemail.com]
>
> I was recently hunting what I thought to be a memory leak in our
> application. What happens is that the Old Gen Space is running full at
> once and then tomcat freezes
> because java is busy with Full GC all the time. I've managed to create
> a memory dump shortly before the crash and the top5 looked like that:
> 
> 14481362 instances of class org.apache.tomcat.util.buf.ByteChunk
> 14471293 instances of class org.apache.tomcat.util.buf.CharChunk
> 14464658 instances of class org.apache.tomcat.util.buf.MessageBytes
> 7113296 instances of class org.apache.tomcat.util.http.MimeHeaderField
> 7080192 instances of class javax.servlet.http.Cookie
> 
> Other classes looked as normal (I was making jmap histograms all the
> time and comparing).
> 
> Now, the funny thing is that all that data was bound to ONE request. I
> checked the manager status page previously and it showed only one
> active request, but lasting more than 5 hours:
> 
> S    18757746 ms    0 KB    0 KB    XXX.XXX.XXX.XXX   www.site.com
> POST /searchboxright.html?linkId=XXX|SearchBoxRight|NA| HTTP/1.1
> 
> By analyzing the dump I found that all MimeHeaderFields were in one
> large array belonging to one response object, belonging to the
> request, with remote ip equal to the XXX.XXX.XXX.XXX ip of the request
> in the manager.
> 
> I understand that sicne the request lasted 5 hours all the data went
> into old space filling it out and causing the problem, but HOW can it
> actually happen that a response object contains 8.000.000 mime
> headers?

App/Tomcat stuck in a loop adding cookie headers?

Do you have any thread dumps?

Mark



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

Reply via email to