Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8138752

G1CollectorPolicy::should_should_update_surv_rate_group_predictors() uses wrong predicate

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 9
    • 9
    • hotspot
    • gc
    • b89

        G1CollectorPolicy::should_should_update_surv_rate_group_predictors() determines whether the survivor rate group predictors should be updated.

        The current method uses CollectorState::last_young_gc() && !CollectorState::in_marking_window(), which means "only the gc between GC cleanup and mixed GC".

        The first term is wrong, particularly when looking at the original code before JDK-7097567: it should be CollectorState::last_gc_was_young() && !CollectorState::in_marking_window(), i.e. all young gcs where no marking is running.

        Fix this.

              tschatzl Thomas Schatzl
              tschatzl Thomas Schatzl
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: