JDK-7146343 : PS invoke methods should indicate the type of gc done
Type:Bug
Component:hotspot
Sub-Component:gc
Affected Version:hs23
Priority:P3
Status:Closed
Resolution:Fixed
OS:generic
CPU:generic
Submitted:2012-02-16
Updated:2012-03-24
Resolved:2012-03-24
The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
The ParallelGC invoke() and invoke_no_policy() methods should return a value to indicate whether a gc was done or not. When different types of collections can occur, the return value should indicate the type of collection.
EVALUATION
The simplest solution is to return a boolean indicating whether a gc was done. PSScavenge::invoke() is different in that it can invoke a young gc, full gc, or no gc (i.e., if GCLocker has locked out gc). Returning true if a full gc was done and false otherwise is enough to satisfy current needs. That is slightly quirky, but will be revisited.