Please review this simple change to remove filler arrays (and objects) from 
heap dumps. In the hprof format, they are not distinguishable from `int[]`, 
which can be confusing (where are these huge `int[]`s coming from in my 
application?), and they bloat the heap dump time and size.

Using Eclipse MAT, before:

with-filler.hprof - 6.2GB

Class Name | Objects | Shallow Heap
=====================================
    byte[]    39,938   4,997,553,360
     int[]    45,839   1,140,524,000


After:

without-filler.hprof - 5.0GB

Class Name | Objects | Shallow Heap
=====================================
    byte[]    48,321    4,998,520,248
     int[]     4,995          951,088


([Test 
file](https://gist.github.com/olivergillespie/1661499afb9e1c708de30cf0bdfca30e))

---------
- [x] I confirm that I make this contribution in accordance with the [OpenJDK 
Interim AI Policy](https://openjdk.org/legal/ai).

-------------

Commit messages:
 - 8372389: Remove filler arrays from heap dump

Changes: https://git.openjdk.org/jdk/pull/32542/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=32542&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8372389
  Stats: 5 lines in 1 file changed: 5 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/32542.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/32542/head:pull/32542

PR: https://git.openjdk.org/jdk/pull/32542

Reply via email to