RFR: JDK-8147447: [TESTBUG] serviceability/tmtools/jstack/WaitNotifyThreadTest.java test fails

Alexander Kulyakhtin alexander.kulyakhtin at oracle.com
Thu Jan 28 11:48:53 UTC 2016


Yes, I have tested with these options and also has executed a test run with all the possible nightly options combinations.

Best regards,
Alexander

----- Original Message -----
From: staffan.larsen at oracle.com
To: alexander.kulyakhtin at oracle.com
Cc: serviceability-dev at openjdk.java.net, daniel.daugherty at oracle.com, serguei.spitsyn at oracle.com
Sent: Thursday, January 28, 2016 2:35:19 PM GMT +03:00 Iraq
Subject: Re: RFR: JDK-8147447: [TESTBUG] serviceability/tmtools/jstack/WaitNotifyThreadTest.java test fails

Looks good! I assume you have tested this with -Xcomp and -Xint.

Thanks,
/Staffan


> On 28 jan. 2016, at 11:20, Alexander Kulyakhtin <alexander.kulyakhtin at oracle.com> wrote:
> 
> Hi Staffan,
> 
> I've changed the test fix for https://bugs.openjdk.java.net/browse/JDK-8147447 "serviceability/tmtools/jstack/WaitNotifyThreadTest.java test fails"
> 
> Webrev: http://cr.openjdk.java.net/~akulyakh/8147447_3/index.html
> 
> Before the fix the test always tries to find and verify the object reference information in the jstack output.
> However, depending on the VM options, this information is not always available 
> With the fix the test does not try to verify the object reference if it's not available.
> To keep the test simple we do not analyze if the object reference shall be available or not.
> 
> Best regards,
> Alexander
> 
> 
> 
> ----- Original Message -----
> From: alexander.kulyakhtin at oracle.com
> To: staffan.larsen at oracle.com
> Cc: daniel.daugherty at oracle.com, serguei.spitsyn at oracle.com, serviceability-dev at openjdk.java.net
> Sent: Friday, January 22, 2016 1:28:12 PM GMT +03:00 Iraq
> Subject: Re: RFR: JDK-8147447: [TESTBUG] serviceability/tmtools/jstack/WaitNotifyThreadTest.java test fails
> 
> Hi Staffan, 
> 
> Following your suggestion below, I'm going to restrict the possible options for the test to -Xmixed only and verify that either of the two patterns is present in the jstack output.
> 
> I'm going to submit a review after testing with all the options combinations.
> 
> Best regards,
> Alexander
> 
> ----- Original Message -----
> From: staffan.larsen at oracle.com
> To: alexander.kulyakhtin at oracle.com
> Cc: daniel.daugherty at oracle.com, serviceability-dev at openjdk.java.net
> Sent: Thursday, January 21, 2016 7:35:46 PM GMT +03:00 Iraq
> Subject: Re: RFR: JDK-8147447: [TESTBUG] serviceability/tmtools/jstack/WaitNotifyThreadTest.java test fails
> 
> 
>> On 21 jan. 2016, at 16:52, Alexander Kulyakhtin <alexander.kulyakhtin at oracle.com> wrote:
>> 
>> Dan,
>> 
>> Thank you very much for your help.
>> 
>> I'm then going to modify the test accordingly. 
>> In the -Xmixed mode the test will try to match the jstack output to both the frames patterns and will succeed if either of them matches.
>> In the -Xint and -Xcomp mode the test will match to the corresponding pattern as you have indicated
>> 
>> In case the test is executed with several of those three options specified together on the command line, the test will presume the option specified last takes precedence.
> 
> I think it would be fine to always assume -Xmixed mode and succeed if any of the frames matches. It would make the code simpler and easier to maintain.
> 
> /Staffan
> 
>> 
>> Please, let me know if I'm missing something.
>> 
>> Best regards,
>> Alexandr
>> 
>> ----- Original Message -----
>> From: daniel.daugherty at oracle.com
>> To: staffan.larsen at oracle.com, alexander.kulyakhtin at oracle.com
>> Cc: serviceability-dev at openjdk.java.net
>> Sent: Thursday, January 21, 2016 6:35:47 PM GMT +03:00 Iraq
>> Subject: Re: RFR: JDK-8147447: [TESTBUG] serviceability/tmtools/jstack/WaitNotifyThreadTest.java test fails
>> 
>> On 1/21/16 8:11 AM, Staffan Larsen wrote:
>>>> On 21 jan. 2016, at 15:33, Alexander Kulyakhtin <alexander.kulyakhtin at oracle.com> wrote:
>>>> 
>>>> Staffan,
>>>> 
>>>> Would it be sufficient to modify the code so that isCompMode() returns true if and only if the -Xcomp option is present and is not followed by the -Xmixed option?
>>> Maybe, but that looks fragile. What if there is another option that implicitly enables compile mode?
>> 
>> Even if the VM is in -Xmixed mode, code could get compiled and
>> the stack trace output would show the compiled frame version
>> and not the interpreted frame version. So:
>> 
>> -Xint mode   - the compiled frame version will not be seen
>> -Xmixed mode - both versions may be seen depending on compile
>>               thresholds and other factors
>> -Xcomp mode  - the compiled frame version will be seen
>> 
>> Dan
>> 
>> 
>>> 
>>>> Best regards,
>>>> Alexander
>>>> 
>>>> ----- Original Message -----
>>>> From: staffan.larsen at oracle.com
>>>> To: alexander.kulyakhtin at oracle.com
>>>> Cc: serviceability-dev at openjdk.java.net
>>>> Sent: Thursday, January 21, 2016 5:20:14 PM GMT +03:00 Iraq
>>>> Subject: Re: RFR: JDK-8147447: [TESTBUG] serviceability/tmtools/jstack/WaitNotifyThreadTest.java test fails
>>>> 
>>>> isCompMode() will fail if the VM is started with both -Xcomp and -Xmixed.
>>>> 
>>>> We need to find a better way to check if compiled mode is being used. Perhaps System.getProperty("java.vm.info").contains("compiled”) ?
>>>> 
>>>> /Staffan
>>>> 
>>>>> On 19 jan. 2016, at 11:59, Alexander Kulyakhtin <alexander.kulyakhtin at oracle.com> wrote:
>>>>> 
>>>>> Hi,
>>>>> 
>>>>> Could you, please, review this minor test-only change
>>>>> 
>>>>> CR: https://bugs.openjdk.java.net/browse/JDK-8147447 "[TESTBUG] serviceability/tmtools/jstack/WaitNotifyThreadTest.java test fails"
>>>>> Webrev: http://cr.openjdk.java.net/~akulyakh/8147447/index.html
>>>>> 
>>>>> The test WaitNotifyThreadTest.java tries expects to find in the jstack output the string similar to:
>>>>> 'waiting on <0x000000008f64e6d0> (a java.lang.Object)'
>>>>> However, with the -Xcomp option turned on there is no object reference available and the same strings look like:
>>>>> 'waiting on <no object reference available>'
>>>>> This causes the false failures of the test when executed with the -Xcomp option.
>>>>> 
>>>>> We are modifying the test so it takes into account the possible difference between the jstack outputs.
>>>>> 
>>>>> The same issue has been present in the legacy test from which this test has been ported, so it is not a new and not a regression issue.
>>>>> 
>>>>> Best regards,
>>>>> Alexander
>> 
> 



More information about the serviceability-dev mailing list