-
Enhancement
-
Resolution: Unresolved
-
P4
-
None
After a full-gc, young-gen is usually empty. However, it is also possible that young-gen is not empty after full-gc, for example when the heap is too full. In this particular scenario, the old-gen might not be completely full, since the first obj in young-gen is too large to be moved there. Future small allocation, if can't satisfied by young-gen, will trigger full-gc repeatedly, because old-gen allocation is permitted only for small obj before running a GC. This can result in back-to-back full-gc. If `UseGCOverheadLimit` is disabled, some tests can timeout.
Try to relax the condition for old-gen allocation when heap is almost full. This is similar to what is covered inJDK-8346920 for Serial GC.
Try to relax the condition for old-gen allocation when heap is almost full. This is similar to what is covered in
- relates to
-
JDK-8346920 Serial: Support allocation in old generation when heap is almost full
-
- Resolved
-
- links to
-
Review(master) openjdk/jdk/26599