JDK-8176808 : Split up metaspace.cpp
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 10
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2017-03-15
  • Updated: 2019-06-20
  • Resolved: 2018-05-21
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 11
11 b15Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Description
metaspace.cpp has grown unwieldy over time. It would make sense to split it into multiple parts. 

- Move SpaceManager, VirtualSpaceManager and ChunkManager to their repective own headers and expose them, as Coleen suggested
- This makes it possible to remove the remaining test coding from metaspace.cpp and make them proper gtests.
- It would also make sense to extract and if possible unify/simplify common coding handling ChunkIndex enums and chunk geometry.
Comments
I vote to expose those classes in public headers and split out SpaceManager, VirtualSpaceManager and ChunkManager from metaspace.cpp.
28-02-2018