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

Serial: Always sample promoted bytes to avoid getting stuck in Full GCs

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P4 P4
    • 24
    • 23
    • hotspot
    • gc
    • b02

      `TenuredGeneration::update_gc_stats` records #promoted bytes after gc. The promoted-bytes metric is updated only after young-gc though.

      This can lead to outdated promoted-bytes after a full-gcs. `TenuredGeneration::promotion_attempt_is_safe` use this metric to decide whether to start young-gc or full-gc, so this outdated promoted-bytes can result into choosing full-gc all the time if old-gen free-space is tight.

      Therefore, the promoted-byte metric should be updated both after young-gc and after full-gc so that after some full-gc that reduces used-heap, one can get back to running young-gc.

            ayang Albert Yang
            ayang Albert Yang
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: