RFR(S): 8243947: [TESTBUG] hotspot/jtreg:hotspot_appcds_dynamic fails when the JDK doesn't have default CDS archive
Calvin Cheung
calvin.cheung at oracle.com
Thu May 14 00:51:04 UTC 2020
Hi Ioi,
Thanks for your review.
Here's an update webrev based on your comments:
http://cr.openjdk.java.net/~ccheung/jdk15/8243947/webrev.01/
I've modified 2 files: TestCommon.java and DynamicArchiveTestBase.java.
thanks,
Calvin
On 5/13/20 2:52 PM, Ioi Lam wrote:
> Hi Calvin,
>
> I think this code can be changed to make it easier to understand:
>
>
> 205 if (tempBaseArchive != null) {
> 206 baseArchive = new File(tempBaseArchive);
> 207 }
> 208 if (tempBaseArchive == null || !baseArchive.isFile()) {
> 209 tempBaseArchive =
> getNewArchiveName("tempBaseArchive");
>
> ->
>
> if (tempBaseArchive == null || !(new File(tempBaseArchive)).isFile()) {
> tempBaseArchive = getNewArchiveName("tempBaseArchive");
>
>
> Is the following necessary? I think it should already be handled in
> dump2. (Similarly for the "run" and "dumpAndRun" methods as well).
>
> 136 public static Result dump(String topArchiveName, String ...
> cmdLineSuffix)
> 137 throws Exception
> 138 {
> 139 if (!isUseSharedSpacesDisabled()) {
> 140 return dump2(null, topArchiveName, cmdLineSuffix);
> 141 } else {
> 142 String baseArchiveName = getTempBaseArchive();
> 143 return dump2(baseArchiveName, topArchiveName,
> cmdLineSuffix);
> 144 }
>
> The rest of the changes look good to me.
>
> Thanks
> - Ioi
>
>
> On 5/7/20 12:17 PM, Calvin Cheung wrote:
>> JBS: https://bugs.openjdk.java.net/browse/JDK-8243947
>> webrev: http://cr.openjdk.java.net/~ccheung/jdk15/8243947/webrev.00/
>>
>> This change is to handle the situation when a JDK doesn't have
>> default CDS archive or the CDS archive was created with a different
>> vm options than the ones supplied for running the test. This change
>> also address JDK-8243207: Increase AppCDS test coverage with ZGC.
>>
>> Summary of changes:
>>
>> - In DynamicArchiveTestBase.java, it checks if the UseSharedSpaces
>> flag has been disabled using WhiteBox api. If so, it will regenerate
>> a base CDS archive before running the dynamic CDS archive test.
>> - Since DynamicArchiveTestBase uses WhiteBox, all tests under
>> dynamicArchive will need to be run with WhiteBox. Changes to the
>> tests under dynamicArchive are mostly adding WhiteBox to the command
>> line.
>> - In TestCommon.java, for AppCDS tests running with the
>> -Dtest.dynamic.cds.archive=true option, a base CDS archive will be
>> generated.
>>
>> Testing:
>>
>> locally on linux-x64, ran appcds test group
>> hotspot_appcds_dynamic with
>> vmoptions="-Dtest.dynamic.cds.archive=true -XX:+UseZGC"
>> and with the default CDS archive (classes.jsa) removed
>> from the test JDK
>> mach5 tier1 - 4.
>>
>> thanks,
>>
>> Calvin
>>
>>
>
More information about the hotspot-runtime-dev
mailing list