RFR: 8246135: ZGC: Save important log lines and print them when dumping hs_err files
Stefan Karlsson
stefan.karlsson at oracle.com
Fri May 29 10:23:17 UTC 2020
Hi all,
Please review this patch to save some of the important ZGC log lines and
print them when dumping hs_err files.
https://cr.openjdk.java.net/~stefank/8246135/webrev.01/
https://bugs.openjdk.java.net/browse/JDK-8246135
The patch adds a concept of "precious" log lines. What's typically
logged are GC initialization lines, but also error messages are saved.
These lines are then dumped in the hs_err file if the JVM crashes or
hits an assert. The lines can also be printed in a debugger to get a
quick overview when debugging.
The precious lines are always saved, but just like any other Unified
Logging calls, only logged if the tags are enabled.
The patch builds on the JDK-8246134 patch. The hs_err output looks like
this:
ZGC Precious Log:
NUMA Support: Disabled
CPUs: 8 total, 8 available
Memory: 16384M
Large Page Support: Disabled
Medium Page Size: 32M
Workers: 5 parallel, 1 concurrent
Address Space Type: Contiguous/Unrestricted/Complete
Address Space Size: 65536M x 3 = 196608M
Min Capacity: 42M
Initial Capacity: 256M
Max Capacity: 4096M
Max Reserve: 42M
Pre-touch: Disabled
Uncommit: Enabled
Uncommit Delay: 300s
Runtime Workers: 5 parallel
ZGC Globals:
GlobalPhase: 2 (Relocate)
GlobalSeqNum: 1
Offset Max: 4096G (0x0000040000000000)
Page Size Small: 2M
Page Size Medium: 32M
ZGC Metadata Bits:
Good: 0x0000100000000000
Bad: 0x00002c0000000000
WeakBad: 0x00000c0000000000
Marked: 0x0000040000000000
Remapped: 0x0000100000000000
Heap:
ZHeap used 12M, capacity 256M, max capacity 4096M
Metaspace used 6501K, capacity 6615K, committed 6784K, reserved
1056768K
class space used 559K, capacity 588K, committed 640K, reserved
1048576K
ZGC Page Table:
Small 0x0000000000000000 0x0000000000200000 0x0000000000200000
Allocating
Small 0x0000000000200000 0x0000000000240000 0x0000000000400000
Allocating
Small 0x0000000000400000 0x0000000000600000 0x0000000000600000
Allocating
Small 0x0000000000600000 0x0000000000800000 0x0000000000800000
Allocating
Small 0x0000000000800000 0x00000000009c0000 0x0000000000a00000
Allocating
Small 0x0000000000a00000 0x0000000000a40000 0x0000000000c00000
Allocating
Thanks,
StefanK
More information about the hotspot-gc-dev
mailing list