8214155: GCHeapLog inconsistents with CollectorCounters

Yasumasa Suenaga yasuenag at gmail.com
Wed Nov 21 12:58:03 UTC 2018


Hi all,

We can see number of GC events via jcmd VM.info and PerfCounter.print.
However they hold different values.
(See JDK-8214155 on JBS [1] for more details)

I created a patch and pushed it to submit repo [2], but it was failed as
shown in the forwarding email.

I tried to count-up _total_collections and _total_full_collections on
CollectedHeap at c'tor of SvcGCMarker, but it breaks current behavior
especially VM_GenCollectFullConcurrent. These counters seems to be used to
check GC cycle.
OTOH I tried to use PerfCounter values for GCHeapLog, but it might not be
good because they will hold incorrect values when UsePerfData is set to
false.

I believe this issue should be fixed for troubleshooters. Of course, they
can use `jhsdb jsnap` to check the counters. But I guess most of them
believe contents in hs_err log.

Do you have any idea for this issue?

Thanks,
Yasumasa


[1] https://bugs.openjdk.java.net/browse/JDK-8214155
[2] https://hg.openjdk.java.net/jdk/submit/rev/0702b43594e6

---------- Forwarded message ---------
From: <do-not-reply at oracle.com>
Date: 2018年11月21日(水) 13:07
Subject: [Mach5] mach5-one-ysuenaga-JDK-8214155-20181121-0302-11180:
FAILED, Failed tests: 15
To: <yasuenag at gmail.com>


Build Details: 2018-11-21-0259422.yasuenag.source15 Failed Tests
TestTierPlatformKeywordsDescriptionTask
gc/TestSystemGC.java#id1 tier1 macosx-x64-debug gc othervm ExitCode: 134
task
runtime/MemberName/MemberNameLeak.java tier1 windows-x64-debug bug8174749
bug8213307 othervm driver Crash: Internal Error
...vmCMSOperations.cpp...assert((_gc_count_before <
heap->total_collections()) || (GCLocker::is_active() && (_gc_count_before
== heap->total_collections()))) failed: total_collections() should be
monotonically increasing task
gc/g1/TestRemsetLogging.java tier1 windows-x64-debug bug8013895 bug8129977
bug8145534 driver Exception: java.lang.Exception: Incorrect amount of
per-period RSet summaries at the end. Expected ..., got ... task
gc/TestSystemGC.java#id1 tier1 windows-x64-debug gc othervm ExitCode: 1 task
runtime/MemberName/MemberNameLeak.java tier1 macosx-x64-debug bug8174749
bug8213307 othervm driver Crash: Internal Error
...vmCMSOperations.cpp...assert((_gc_count_before <
heap->total_collections()) || (GCLocker::is_active() && (_gc_count_before
== heap->total_collections()))) failed: total_collections() should be
monotonically increasing task
gc/cms/TestCMSScavengeBeforeRemark.java tier1 windows-x64-debug bug8139868
gc othervm ExitCode: 1 task
gc/cms/GuardShrinkWarning.java tier1 windows-x64-debug bug8012111 gc
regression othervm Crash: Internal Error
...vmCMSOperations.cpp...assert((_gc_count_before <
heap->total_collections()) || (GCLocker::is_active() && (_gc_count_before
== heap->total_collections()))) failed: total_collections() should be
monotonically increasing task
gc/cms/TestCMSScavengeBeforeRemark.java tier1 macosx-x64-debug bug8139868
gc othervm ExitCode: 134 task
gc/cms/GuardShrinkWarning.java tier1 macosx-x64-debug bug8012111 gc
regression othervm Crash: Internal Error
...vmCMSOperations.cpp...assert((_gc_count_before <
heap->total_collections()) || (GCLocker::is_active() && (_gc_count_before
== heap->total_collections()))) failed: total_collections() should be
monotonically increasing task
gc/g1/TestRemsetLogging.java tier1 macosx-x64-debug bug8013895 bug8129977
bug8145534 driver Exception: java.lang.Exception: Incorrect amount of
per-period RSet summaries at the end. Expected ..., got ... task
runtime/MemberName/MemberNameLeak.java tier1 linux-x64-debug bug8174749
bug8213307 othervm driver Crash: Internal Error
...vmCMSOperations.cpp...assert((_gc_count_before <
heap->total_collections()) || (GCLocker::is_active() && (_gc_count_before
== heap->total_collections()))) failed: total_collections() should be
monotonically increasing task
gc/TestSystemGC.java#id1 tier1 linux-x64-debug gc othervm ExitCode: 134 task
gc/g1/TestRemsetLogging.java tier1 linux-x64-debug bug8013895 bug8129977
bug8145534 driver Exception: java.lang.Exception: Incorrect amount of
per-period RSet summaries at the end. Expected ..., got ... task
gc/cms/TestCMSScavengeBeforeRemark.java tier1 linux-x64-debug bug8139868 gc
othervm ExitCode: 134 task
gc/cms/GuardShrinkWarning.java tier1 linux-x64-debug bug8012111 gc
regression othervm Crash: Internal Error
...vmCMSOperations.cpp...assert((_gc_count_before <
heap->total_collections()) || (GCLocker::is_active() && (_gc_count_before
== heap->total_collections()))) failed: total_collections() should be
monotonically increasing task Mach5 Tasks Results Summary

   - UNABLE_TO_RUN: 0
   - FAILED: 0
   - EXECUTED_WITH_FAILURE: 9
   - KILLED: 0
   - PASSED: 67
   - NA: 0Test 9 Executed with failure
      - tier1-debug-open_test_hotspot_jtreg_tier1_gc_1-linux-x64-debug-40
      Results: total: 79, passed: 78; failed: 1
      - tier1-debug-open_test_hotspot_jtreg_tier1_gc_1-macosx-x64-debug-41
      Results: total: 79, passed: 78; failed: 1
      - tier1-debug-open_test_hotspot_jtreg_tier1_gc_1-windows-x64-debug-42
      Results: total: 79, passed: 78; failed: 1
      - tier1-debug-open_test_hotspot_jtreg_tier1_gc_2-linux-x64-debug-43
      Results: total: 116, passed: 113; failed: 3
      - tier1-debug-open_test_hotspot_jtreg_tier1_gc_2-macosx-x64-debug-44
      Results: total: 115, passed: 112; failed: 3
      - tier1-debug-open_test_hotspot_jtreg_tier1_gc_2-windows-x64-debug-45
      Results: total: 115, passed: 112; failed: 3
      - tier1-debug-open_test_hotspot_jtreg_tier1_runtime-linux-x64-debug-52
      Results: total: 436, passed: 435; failed: 1
      - tier1-debug-open_test_hotspot_jtreg_tier1_runtime-macosx-x64-debug-53
      Results: total: 428, passed: 427; failed: 1
      - tier1-debug-open_test_hotspot_jtreg_tier1_runtime-windows-x64-debug-54
      Results: total: 420, passed: 419; failed: 1
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20181121/1cb0111f/attachment.html>


More information about the hotspot-gc-dev mailing list