简体   繁体   中英

Heap Dump Analysis - Find root cause of OutOfMemory Exception

I am running an application that has 4 gigs of maxmimum heap size -Xms4096m -Xmx4096m -Xmn1024m with GC configured as -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=50 and GC interval of Dsun.rmi.dgc.server.gcInterval=43200000 -Dsun.rmi.dgc.client.gcInterval=43200000

Suddenly my application went to heap out of memory exception and i took thread dumps and heap dumps on the same occasion. On analyzing Thread dumps, thread are stuck due to creating some value to a hashMap and arrayList. ByteArrayOutStream has created locks in one of the thread.

On Analysing Heap dump in eclipse memory analyzer tool, it clearly says bytearray object has occupied almost 1 Gigs of Heap. From the GCViewer it shows it has a peak in fraction of second. I am clue less why suddenly Byte array object used 1 Gigs of space. Can some one help me out to narrow down the culprit.

-- Application Server - Weblogic 12c

On Analysing Heap dump in eclipse memory analyzer tool, it clearly says bytearray object has occupied almost 1 Gigs of Heap.

Use the shortest paths to GC root feature of MAT to see which references are holding onto that byte array.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM