IBM JDK dumps too many heaps per OutOfMemory. How can I decrease this #?

273 Views Asked by At

We're new to the IBM jvm. When reviewing heap dumps caused by OutOfMemoryError (i..e -XX:+HeapDumpOnOutOfMemoryError), we see often multiple dumps (.phd files) generated in the same instant. Example:

heapdump.20141111.011601.8944.0003.phd heapdump.20141111.011601.8944.0005.phd heapdump.20141111.011601.8944.0007.phd heapdump.20141111.011601.8944.0009.phd

As I read these, the jvm generated these 4 heap dumps at 2014-11-11 01:16:01 am, for pid #8944.

So why 4? And Why 4 in the same second? [I assumed because 4 actually OOM's occurred in the same second]

reviewing these dump, I found them to be pretty identical. Dumps 2,3, and 4 don't add any info, but only clutter and fill up the drive.

How can I configure the IBM jvm to dump only one heap dump? Can I configure a 'wait time' between heap dumps?

thanks

1

There are 1 best solutions below

0
On

Not 100%sure about the cause of the multiple dump, could be that the dump/recovery process is generating another OOM.

You can use the IBM JDK -Xdump option (controls the way you use dump agents and dumps) to limit the number of dumps you get on OutOfMemoryErrors by providing a range.
For example, to limit the number to a single dump use a range of 0..1: -Xdump:heap:range=0..1
The default range is 1..4, you can see it by running the JVM with -Xdump:what