RFR: 8257241: CDS should not handle disableEagerInitialization for archived lambda proxy classes [v3]

Mandy Chung mchung at openjdk.java.net
Tue Dec 1 23:29:58 UTC 2020


On Tue, 1 Dec 2020 23:16:13 GMT, Calvin Cheung <ccheung at openjdk.org> wrote:

>> Please review this change which includes:
>> 
>> - If the `jdk.internal.lambda.disableEagerInitialization`property is enabled, the `InnerClassLambdaMetafactory` will not involve CDS to archive lambda proxy classes or to find them from an archive.
>> 
>> - Not passing the `initialize` (same as `!disableEagerInitialization`) to `LambdaProxyClassArchive.find` and eventually to the `JVM_LookupLambdaProxyClassFromArchive` function.
>> 
>> Testing:
>> 
>> - [x] all cds/appcds tests locally on linux-x64
>> 
>> - [x] tiers 1 - 4 (in progress)
>
> Calvin Cheung has updated the pull request incrementally with one additional commit since the last revision:
> 
>   1. Make a copy of LambdaEagerInitTest.java to the test-classes dir
>   2. Modifications to LambdaEagerInit.java per review comments

test/hotspot/jtreg/runtime/cds/appcds/test-classes/LambdaEagerInitTest.java line 25:

> 23: 
> 24: /**
> 25:  * @test

This is part of LambdaEagerInit test.   This does not need to be `@test` and so the entire comment block can be removed.

If you want to verify, you could add a test case in LambdaEagerInit.java to run this main class without the CDS archive.

-------------

PR: https://git.openjdk.java.net/jdk/pull/1542


More information about the core-libs-dev mailing list