RFR: 8316632: Shenandoah: Raise OOME when gc threshold is exceeded [v5]

William Kemper wkemper at openjdk.org
Tue Oct 17 18:19:08 UTC 2023


> Shenandoah will run back-to-back full GCs and _almost_ grind mutator progress to a halt before eventually exhausting memory. This change will have Shenandoah raise a gc threshold exceeded exception if the collector fails to make progress after `ShenandoahNoProgressThreshold` full GC cycles (default is 3).

William Kemper has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 13 additional commits since the last revision:

 - Make explicit field for Shenandoah
 - Restore original retry logic, pull gc overhead check back over retry
 - Merge branch 'openjdk-master' into shenandoah-oome-redux
 - Merge check for no-progress into retry allocation block
 - Revert change to TEST.groups
 - Merge remote-tracking branch 'openjdk/master' into shenandoah-oome-redux
 - Extend exemption for EATests that rely on timely OOME to Shenandoah
 - Improve comment, increase default for no progress threshold
 - Allocator should not reset bad progress count
 - Allocator should not reset bad progress count
 - ... and 3 more: https://git.openjdk.org/jdk/compare/b9836bee...868af376

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/15852/files
  - new: https://git.openjdk.org/jdk/pull/15852/files/1971467f..868af376

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=15852&range=04
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=15852&range=03-04

  Stats: 32231 lines in 1017 files changed: 18757 ins; 6567 del; 6907 mod
  Patch: https://git.openjdk.org/jdk/pull/15852.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/15852/head:pull/15852

PR: https://git.openjdk.org/jdk/pull/15852


More information about the shenandoah-dev mailing list