How to read Java 8 metaspace dump

644 Views Asked by At

We have been suffering metaspace OOM recently for our application due to groovy stuff, however, I managed to cache compiled script to stop it happening right now.

Previously, the process crashed at least once a day. It has been running fine for at least 4 days since i applied the fix. And to double confirm the fix is working for sure, i dumped the metaspace using jcmd Metaspace.dump

However, i have problems to read the metaspace dumps, i believe the key information is in the head section pasted below. I have no idea about the difference between class space and non class space and how much metaspace that my process has been committed. So help is needed here, thanks in advance!

Dump Reason : JCMD
MaxMetaspaceSize : 536870912 B
CompressedClassSpaceSize : 528482304 B
Class Space Used : 21412264 B
Class Space Capacity : 25373696 B
Class Space Committed : 44572672 B
Class Space Reserved : 1073741824 B
NonClass Spaces Used : 178477376 B
NonClass Spaces Capacity : 219028480 B
NonClass Spaces Committed : 347594752 B
NonClass Spaces Reserved : 348127232 B

I can attache the complete dump file if it's necessary. But they seem to me just the memory chunk allocation addresses.

0

There are 0 best solutions below