JDK-8264423 : G1: Rename full gc attribute table states
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 17
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2021-03-30
  • Updated: 2021-04-22
  • Resolved: 2021-04-15
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 17
17 b19Fixed
Related Reports
Relates :  
Description
Since JDK-8253600 g1 full gc has its own (temporary) attribute table storing information that it needs for evacuation.

Currently the naming corresponds to the attributes in HeapRegion. This is somewhat confusing, as they do not completely match.

While discussing this in the review for JDK-8262068 we thought of changing this to more reflect the purpose:

I.e.
closed -> not_marked_through (or "always live" or "always_marked" something similar to indicate that we do not need to mark through them)
pinned -> not_compacted
normal -> compacted (or just keep "normal" as it is some internal state)

Also, for verification the change could reset the attribute of just freed regions to "Invalid" again after marking when we free completely empty regions. This is purely for verification/assertion purposes.
Comments
Changeset: 75da1e9a Author: Thomas Schatzl <tschatzl@openjdk.org> Date: 2021-04-15 08:12:37 +0000 URL: https://git.openjdk.java.net/jdk/commit/75da1e9a
15-04-2021

" Also, for verification the change could reset the attribute of just freed regions to "Invalid" again after marking when we free completely empty regions. This is purely for verification/assertion purposes. " This has actually made part of JDK-8253600 already.
14-04-2021