Dear Leon,

i'm performing a jmap -histo:live on a tomcat which froze because of
full (8GB) old space gen, and my top 10 looks like:

num     #instances         #bytes  class name
----------------------------------------------
  1:      19268009     2655683368  [C
2: 17410092 1392807360 org.apache.tomcat.util.buf.MessageBytes 3: 17411294 1114322816 org.apache.tomcat.util.buf.ByteChunk 4: 17410562 974991472 org.apache.tomcat.util.buf.CharChunk
  5:      19275640      771025600  java.lang.String
  6:       8697280      626204160  javax.servlet.http.Cookie
7: 8699584 417580032 org.apache.tomcat.util.http.MimeHeaderField
  8:           188      134247456
[Lorg.apache.tomcat.util.http.MimeHeaderField;
  9:        198645      114493776  [Ljava.lang.Object;
 10:         21303       30450504  [B


So how did I manage to get almost 9 million of mimeheaderfields and
cookies and 17 millions message bytes and chunks.
During normal operation mode the number of the above doesn't increase
except before the gc freeze.


You can try to generate a heap dump and analyse it using jhat. Trouble is, jhat requires insane amounts of memory. So for you 8GB dump you'd need something in the order of 32GB RAM for jhat.

If that is feasible, you could lower the memory limits on your machine, run the tests again to get a smaller dump with (hopefully) the same characteristics.
--
Kees Jan

http://java-monitor.com/forum/
kjkos...@kjkoster.org
06-51838192

The secret of success lies in the stability of the goal. -- Benjamin Disraeli


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

Reply via email to