JDK-8240239 : Replace ConcurrentGCPhaseManager
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 15
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2020-02-28
  • Updated: 2021-05-28
  • Resolved: 2020-03-06
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.

To download the current JDK release, click here.
JDK 15
15 b14Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
The ConcurrentGCPhaseManager class provides functionality and an API for (primarily) WhiteBox control of concurrent collection cycles.  It supports controlling when such cycles are initiated and supports pausing a cycle at specified points.  This provides a mechanism by which tests can put a concurrent collection into a particular state and hold it there while doing some test-related work, either verifying state expectations or doing some work that the test needs to do with the collection in a particular state.

Only G1 currently implements this API.  While it was intended to be supported by other concurrent collectors, the internal APIs and implementation have turned out to not be a good fit for at least some, and no other collector provides an implementation.  Even the G1 implementation has some issues.

This has inhibited testing of some features with concurrent collectors other than G1.

We should replace ConcurrentGCPhaseManager with some different mechanism that can be more easily adopted by all of the concurrent collectors.  This will involve updating existing tests, but there aren't a large number of tests using the old facility.

Comments
URL: https://hg.openjdk.java.net/jdk/jdk/rev/ba031902229b User: kbarrett Date: 2020-03-06 23:43:13 +0000
06-03-2020