Glitch in JRCMD HEAP_DIAGNOSTICS Output When Memory Usage Increase > 2^31 Bytes

(Doc ID 2125746.1)

Last updated on MARCH 08, 2017

Applies to:

Oracle JRockit - Version R28 to R28.2.0 [Release JRockit]
Information in this document applies to any platform.


On : R28.2.0 version, JVM and JDK

Glitch in JRCMD HEAP_DIAGNOSTICS output when memory usage Increase > 2^31 bytes

when using "jrcmd <pid> heap_diagnostics", you might get between 2 data a memory usage increase > 2Gb.
In that case, some overflow seems to happen, as it results in very strange output, e.g.

39.9% 1462376k 12290755 +1462376k [C
62.0% 6028271k 18704693 +371591k [C
63.2% 6088333k 18269571 +60062k [C          (appears as first line of Detailed Heap)
68.1% 8261694k 18757064 -2020942k [C       (appears as last line of Detailed Heap and increase of 2,2Gb is displayed as negative: -2020942k)
68.4% 8164476k 18571186 -97218k [C
68.4% 8156222k 18575653 -8253k [C
68.3% 8134105k 18572070 -22117k [C
68.4% 8159198k 18587000 +25093k [C
30.4% 1394873k 18174567 +1624283k [C       (the increase is more than the total memory usage !)

The increase should be positive even if greater than 2Gb

The issue can be reproduced at will with the following steps:
1. monitor using heap_diagnostics
2. increase memory usage by a class for more than 2Gb
3. monitor using heap_diagnostics

The issue has the following business impact:
Due to this issue, users cannot monitor faithfully their heap


Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms