JDK-8249262 : Initialize InstanceKlass::_package_entry during CDS dump time
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 16
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2020-07-13
  • Updated: 2021-02-10
  • Resolved: 2021-01-28
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 b08Fixed
Related Reports
Blocks :  
Blocks :  
Relates :  
Description
(This should be done after JDK-8244778 - Archive full module graph in CDS)

With JDK-8244778, the PackageEntry of all archived classes (for the 3 built-in class loaders) are all created during CDS dump time. We can remember this in InstanceKlass::_package_entry to avoid the hashtable lookup at runtime.
Comments
Changeset: bbbfaa58 Author: Calvin Cheung <ccheung@openjdk.org> Date: 2021-01-28 16:17:46 +0000 URL: https://git.openjdk.java.net/jdk/commit/bbbfaa58
28-01-2021

Before JDK-8253081 is fixed, the following code disabled the full module graph, which this RFE depends on. MetaspaceShared::map_archives(...) { ... disable_full_module_graph(); // Disabled temporarily for JDK-8253081 } To prototype this RFE before JDK-8253081, you can comment out the above call.
29-09-2020