RFR(XS): 8213563: appcds/sharedStrings/SharedStringsStress.java fails with 'GC triggered before VM initialization completed' error

Jiangli Zhou jiangli.zhou at oracle.com
Sat Nov 10 00:04:20 UTC 2018


Please review this small fix that moves the 
MetaspaceShared::read_extra_data() call to the main 
MetaspaceShared::preload_and_dump() operation. 
MetaspaceShared::read_extra_data() reads extra symbol and string data 
for archiving. String objects are created during the process, which may 
trigger GC especially when large number of strings are involved.

MetaspaceShared::read_extra_data() was called before the basic 
initialization completion (set_init_completed() in Threads::create_vm), 
in which case GC was not allowed. The issue was hidden before and 
started surfacing after we enabled -XX:-CompactStrings test case with 
SharedStringsStress.java.

webrev: http://cr.openjdk.java.net/~jiangli/8213563/webrev.00/

Bug: https://bugs.openjdk.java.net/browse/JDK-8213563

Tested with 200 runs of SharedStringsStress.java via mach5. Running 
tier1-tier3.

Thanks,

Jiangli



More information about the hotspot-runtime-dev mailing list