RFR(M): JDK-8165805 - [TESTBUG] CDS needs to support JVMTI CFLH - test development
Mikhailo Seledtsov
mikhailo.seledtsov at oracle.com
Mon Sep 12 20:22:48 UTC 2016
Hi Ioi,
Thank you for review. Please see my comments inline:
On 9/10/16, 2:15 AM, Ioi Lam wrote:
> Hi Misha,
>
> These 3 files aren't specific to CDS.
>
> test/runtime/SharedArchiveFile/serviceability/TransformUtil.java
> test/runtime/SharedArchiveFile/serviceability/TransformerAgent.java
> test/runtime/SharedArchiveFile/serviceability/TransformerAgent.mf
>
> Maybe they should be moved tohotspot/test/testlibrary/jvmti, i.e., in
> the same directory as libSimpleClassFileLoadHook.c? (The .c file is a
> a native agent where your new code implements a Java agent).
Thank you for this suggestion. I agree, it makes sense.
>
> TransformRelatedClasses.java
>
> In the runTest() method, the "// create an archive" part is executed
> for every test case. However, it seems the same archive can be used
> for all 4 test cases, so for efficiency it's better to create the
> archive only one time (instead of 4).
Good catch. Thank you. I will fix this.
>
> The rest of the code looks good.
I will make the changes and post an updated webrev.
Thank you,
Misha
>
> Thanks!
> - Ioi
>
> On 9/9/16 7:31 PM, Mikhailo Seledtsov wrote:
>> Please review the tests that accompany the changes for
>> "JDK-8078644 - CDS needs to support JVMTI CFLH"
>>
>> The tests include several test cases that are produced by
>> combination
>> of transforming related classes: super/sub class and
>> interface/implementor.
>> The classes reside in CDS archive. Tests check to ensure that
>> correct
>> transformation is performed, classes are loaded from the archive
>> only when appropriate,
>> and that test process using the archive completes w/o
>> errors/crashes.
>>
>>
>> Details:
>>
>> The main class is TransformRelatedClasses.java; start review with
>> this class.
>> Other classes are:
>> - TransformSuperAndSubClasses.java,
>> TransformInterfaceAndImplementor.java
>> the "actual tests", but really just test headers calling into
>> TransformRelatedClasses.java
>>
>> - TransformTestCommon.java - common methods for transformation
>> tests
>>
>> - TestEntry.java - an entry into combinatorial test table
>> representing a single test case
>>
>> - CDSTestUtils.java, TransformUtil.java - utility classes that
>> are common CDS
>> tests
>>
>> - TransformerAgent.java - agent that performs transformation
>> (comes with .mf file)
>>
>>
>> JBS: https://bugs.openjdk.java.net/browse/JDK-8165805
>> Webrev: http://cr.openjdk.java.net/~mseledtsov/8165805.00/
>> Testing:
>> Ran these tests on a standard set of platforms thru automated
>> test system.
>>
>> Thank you,
>> Misha
>>
>
More information about the hotspot-runtime-dev
mailing list