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

William Kemper wkemper at openjdk.org
Wed Sep 27 17:20:06 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 eight additional commits since the last revision:

 - 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
 - Fix 32-bit build error
 - Do not use atomics in header
 - Signal gc threshold exceeded when appropriate

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/15852/files
  - new: https://git.openjdk.org/jdk/pull/15852/files/f864be67..cd4989e7

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

  Stats: 77835 lines in 2231 files changed: 29102 ins; 15056 del; 33677 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