Problem
I'm attempting to load a core dump into VisualVM. It fails with VisualVM telling me it is not a valid core dump.
I can reproduce every time by:
- Allow the JVM to crash
- Start up VisualVM and double click "VM Coredumps"
- Provide the core dump generated when the JVM crashed
- Press OK - this will fail because 'filename is not a valid core dump!'
I'm quite sure the file I am providing is a valid core dump because:
- It was generated by
coredumpctl dump --output core.pid after a JVM crash.
- My
kernel.core_pattern variable:
$ sysctl kernel.core_pattern
kernel.core_pattern = |/usr/lib/systemd/systemd-coredump %P %u %g %s %t %c %h
- I can open and explore the core dump using GDB
ulimit -c is unlimited
Environment
OS: Arch linux
JDK: OpenJDK 11:
$ java --version
openjdk 11.0.6 2020-01-14
OpenJDK Runtime Environment (build 11.0.6+10)
OpenJDK 64-Bit Server VM (build 11.0.6+10, mixed mode)
VisualVM: Built and ran on OpenJDK 8, as of commit 529a6d5

(Please note that for opening the core dump, OpenJDK 11 was selected as java home)
Exceptions
When selecting the core dump, and selecting OpenJDK 11 as java home, no exceptions arise.
When selecting the core dump, and selecting OpenJDK 8 as java home (not the java version the dump was generated by), this exception arises
Problem
I'm attempting to load a core dump into VisualVM. It fails with VisualVM telling me it is not a valid core dump.
I can reproduce every time by:
I'm quite sure the file I am providing is a valid core dump because:
coredumpctl dump --output core.pidafter a JVM crash.kernel.core_patternvariable:ulimit -cisunlimitedEnvironment
OS: Arch linux
JDK: OpenJDK 11:
VisualVM: Built and ran on OpenJDK 8, as of commit 529a6d5

(Please note that for opening the core dump, OpenJDK 11 was selected as java home)
Exceptions
When selecting the core dump, and selecting OpenJDK 11 as java home, no exceptions arise.
When selecting the core dump, and selecting OpenJDK 8 as java home (not the java version the dump was generated by), this exception arises