I've got a JBoss 4.2.1 application running on a JVM 7 that has triggered heap dumps when it throws OutOfMemoryExceptions
. I have the jvm configured with the following switches:
-Xms1498m -Xmx3000m -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError
I am trying to read through the heap dumps to figure out exactly what caused my OOME. I see large blocks of memory consumed, but they are somewhat expected. What I am looking for at the moment is the "smoking gun".
I've already opened another SO issue here regarding missing memory in my heap dump, so I'm trying to figure out what the JVM was doing when the OOME occurred.
Is there anything in the heap dump that would indicate which thread triggered the OOME? More specifically what the call that triggered my OOME was doing? I realize and understand that in the case of memory leaks, this might be chasing the wrong trail, but I'm looking to see if I see which thread caused the exception.
Is there anyway to use MAT to see this?
Exception in thread "main": java.lang.OutOfMemoryError in your stack trace? – SVashisth Jun 07 '16 at 14:48