RFR: 8311843: GenShen: assertion failed "Old generation affiliated regions must be less than capacity" [v3]
William Kemper
wkemper at openjdk.org
Mon Aug 28 16:59:26 UTC 2023
> There are a few fixes here:
>
> During a Full GC, the compaction process is not constrained by the maximum capacity for young and old generations. We must, therefore, reestablish these constraints after the Full GC completes by _forcing_ the transfer of regions to old, if necessary.
>
> When a region is "flipped" from the Mutator's free set to the Collector's, we cannot _force_ the transfer of the region because the young generation may not have any free regions.
>
> A logic error in the loop which rebuilds the free set could prevent transferring free regions from the mutator to the collector reserves.
>
> Some unused methods and fields were removed.
William Kemper has updated the pull request incrementally with two additional commits since the last revision:
- Force transfer of flipped region after logging a warning
- Log when collector reserves cannot be satisfied.
-------------
Changes:
- all: https://git.openjdk.org/shenandoah/pull/311/files
- new: https://git.openjdk.org/shenandoah/pull/311/files/3af6309e..2b3380d9
Webrevs:
- full: https://webrevs.openjdk.org/?repo=shenandoah&pr=311&range=02
- incr: https://webrevs.openjdk.org/?repo=shenandoah&pr=311&range=01-02
Stats: 16 lines in 1 file changed: 14 ins; 1 del; 1 mod
Patch: https://git.openjdk.org/shenandoah/pull/311.diff
Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/311/head:pull/311
PR: https://git.openjdk.org/shenandoah/pull/311
More information about the shenandoah-dev
mailing list