RFR (S): 8208061: runtime/LoadClass/TestResize.java fails with "Load factor too high" when running in CDS mode
Ioi Lam
ioi.lam at oracle.com
Fri Aug 24 04:13:44 UTC 2018
Hi Jiangli,
The changes look good. I have a couple of suggestions:
classLoaderData.cpp:
if (!DynamicallyResizeSystemDictionaries || DumpSharedSpaces) {
I think we can also remove the DumpSharedSpaces condition. As far as I
know, during dump time, we use the ClassLoaderData API to access the
dictionaries, so even if the dictionary is resized we should be OK.
systemDictionary.cpp
SystemDictionary::set_shared_dictionary:
I think we should add an assert:
assert(!DumpSharedSpaces, "Should not be called with DumpSharedSpaces");
Thanks
- Ioi
On 8/23/18 5:40 PM, Jiangli Zhou wrote:
> Please review the bug fix for JDK-8208061. The
> runtime/LoadClass/TestResize.java test failed with "Load factor too
> high" when running with CDS enabled at runtime. Dictionary resizing
> was disable when UseSharedSpaces was true, which caused the failure.
>
> The fix is to allow resizing for all system dictionaries except for
> the shared dictionary at runtime. The shared dictionary data are from
> mapped CDS archive and does not change at runtime, so resizing is not
> required. The change also adds 'resizable' information to the log
> output in Dictionary::print_on().
>
> webrev: http://cr.openjdk.java.net/~jiangli/8208061/webrev.00
> bug: https://bugs.openjdk.java.net/browse/JDK-8208061
>
> Verified with TestResize.java running locally with CDS enabled. Tier1
> - tier5 tests are in progress.
>
> Thanks,
>
> Jiangli
>
More information about the hotspot-runtime-dev
mailing list