RFR(S): 8192936: RI does not follow the JVMTI RedefineClasses spec that is too strict in the definition

serguei.spitsyn at oracle.com serguei.spitsyn at oracle.com
Thu Apr 18 19:58:13 UTC 2019


Hi Coleen,

Thank you for review!
Serguei


On 4/18/19 11:30, coleen.phillimore at oracle.com wrote:
>
> Hi Serguei,
>
> You made additional fixes for tests affected by this change to add 
> -XX:+AllowRedefinitionToAddOrDeleteMethods.  These changes look good 
> to me.
>
> Thanks,
> Coleen
>
> On 4/16/19 5:40 AM, serguei.spitsyn at oracle.com wrote:
>> Please, review the fix of:
>> https://bugs.openjdk.java.net/browse/JDK-8192936
>>
>>
>> Webrev (fix from Coleen):
>> http://cr.openjdk.java.net/~sspitsyn/webrevs/2019/8192936-redef-add-delete.1/
>>
>> I've already reviewed and updated the webrev with my suggestions.
>>
>>
>> Reviewed and approved CSR:
>> https://bugs.openjdk.java.net/browse/JDK-8221528
>>
>>
>> Summary:
>>   The fix introduces new VM option 
>> -XX:AllowRedefinitionToAddOrDeleteMethods
>>   for compatibility with previous releases. New option enables old 
>> behavior
>>   and allows the JVM TI RedefineClasses and RetransformClasses to 
>> add/delete
>>   private static and private final instance methods in the new class 
>> versions.
>>   Without this option the old behavior is disabled.
>>
>>   New option is deprecated right away.
>>   The plan is to keep this option for several releases to allow customers
>>   (tool vendors) to remove dependency on old behavior from their tools.
>>
>>
>> Testing:
>>   Added new test to verify that class redefinitions which add or 
>> delete methods
>>   return expected JVMTI error codes:
>> test/hotspot/jtreg/serviceability/jvmti/RedefineClasses/TestAddDeleteMethods.java
>>
>>   Several jvmti, com/sun/jdi and java/lang/instrument tests which 
>> need old behavior are updated to use new flag.
>>
>>   Run locally on Linux-x64 the following test suites in release and 
>> fastdebug mode:
>>     - open/test/hotspot/jtreg/serviceability/jvmti/RedefineClasses/
>>     - vmTestbase_nsk_jvmti
>>     - vmTestbase_nsk_jdi
>>     - vmTestbase_nsk_jdb
>>     - vmTestbase_nsk_jdwp
>>     - jdk_jdi
>>     - jdk_instrument
>>
>>   Submission of corresponding mach5 jobs is in progress.
>>
>> Thanks,
>> Serguei
>>
>



More information about the serviceability-dev mailing list