Search code examples
jvmdumpmetaspace

How to get Java8 Metaspace dump (not heap dump)


Are there any tools that are able to get Metaspace dump from a Java8 hotspot vm ?


Solution

  • It seems you encounter a class loading leak.
    Use

    • jmap -clstats PID to dump class loader statistics;
    • jcmd PID GC.class_stats to print the detailed information about memory usage of each loaded class. The latter requires -XX:+UnlockDiagnosticVMOptions.

    The heap dump will also help, because each class in the Metaspace has a corresponding java.lang.Class instance in the heap.