RFR: 8066122: CollectionUsageThreshold.java times out when run with -XX:+ExplicitGCInvokesConcurrent

Dmitry Fazunenko dmitry.fazunenko at oracle.com
Thu Dec 25 12:24:20 UTC 2014


Looks good to me. But you need to get a reviewer's approval.

Thanks,
Dima

On 25.12.2014 15:20, Michail Chernov wrote:
> Hi Dmitry,
>
> Tests were changed, now they use @requires.
>
> http://cr.openjdk.java.net/~eistepan/~mchernov/8066122/webrev.03/
>
> Thanks,
> Michail
>
> On 25.12.2014 14:53, Dmitry Fazunenko wrote:
>> Hi Michail,
>>
>> I strongly believe, that the right way to fix this issue is adding 
>> @requires as you proposed originally.
>> If one specifies external VM options it is expected that all tested 
>> VM will be run with those options.
>> If a test can't be run with some options, adding @requires will help 
>> to not run.
>> Trying to alter the external flags within tests is like a hack we had 
>> to do to avoid failures. Before @requires there wasn't another 
>> alternative.
>> But now, we have got a mechanism to express that a test doesn't work 
>> with certain options. Let's use it.
>>
>> Thanks,
>> Dima
>>
>>
>> On 24.12.2014 17:42, Michail Chernov wrote:
>>> Hi,
>>>
>>> Please take a look at this fix.
>>>
>>> Webrev: 
>>> http://cr.openjdk.java.net/~eistepan/~mchernov/8066122/webrev.02/
>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8066122
>>>
>>> Thanks,
>>> Michail
>>>
>>>
>>> On 22.12.2014 17:21, Michail Chernov wrote:
>>>> Hi Kim,
>>>>
>>>> About jtreg and options filtering out - I know that Boolean options 
>>>> filtering is not bug, it is feature. For example, in case if we 
>>>> define -XX:+SomeImportanatOptionForThisTest for testing and this 
>>>> options is undefined by VM flags which we define during testing, it 
>>>> causes to wrong test result.
>>>>
>>>> I looked through other tests and found that I was wrong - 
>>>> improvement for test failure is more simpler than I thought. 
>>>> Currently I don't make any change in testlibrary.
>>>>
>>>> Suggestid fix is to add -XX:-ExplicitGCInvokesConcurrentto all 
>>>> RunUtil.runTestClearGcOpts and RunUtil.runTestKeepGcOpts invocation.
>>>>
>>>> http://cr.openjdk.java.net/~eistepan/~mchernov/8066122/webrev.02/
>>>>
>>>> Thanks,
>>>> Michail
>>>>
>>>> On 17.12.2014 20:33, Kim Barrett wrote:
>>>>> [This is still not a real review, just kibitzing so far - I’ve 
>>>>> looked at the changes, but don’t yet feel I understand the 
>>>>> surrounding code well enough to say I’ve reviewed them.]
>>>>>
>>>>> On Dec 17, 2014, at 11:01 AM, Michail Chernov 
>>>>> <michail.chernov at oracle.com> wrote:
>>>>>> Test was fixed, now it excludes -XX:+ExplicitGCInvokesConcurrent 
>>>>>> option from test run.
>>>>>> Also fixed LowMemoryTest.java - it failed with same reason as 
>>>>>> CollectionUsageThreshold.java.
>>>>>>
>>>>>> http://cr.openjdk.java.net/~eistepan/~mchernov/8066122/webrev.01/
>>>>>>
>>>>>> Function getFilteredTestJavaOpts in Util.java was got from 
>>>>>> hotspot repo http://hg.openjdk.java.net/jdk9/hs-gc/hotspot/ from 
>>>>>> testlibrary, because Util.java in GC and Util.java in Runtime 
>>>>>> repos are different. This function can be useful not only for 
>>>>>> this case.
>>>>>>
>>>>>> Simply adding of -XX:-ExplicitGCInvokesConcurrent won't work 
>>>>>> because JTREG filtersout it in case if 
>>>>>> -XX:+ExplicitGCInvokesConcurrent is defined as VM option.
>>>>> That bit about jtreg filtering out 
>>>>> -XX:-ExplicitGCInvokesConcurrent seems backward, at least for a 
>>>>> case like this.  I wouldn’t have expected global options 
>>>>> applicable to all tests to override test-specific arguments. Also, 
>>>>> it would seem that would make the other tests my earlier comment 
>>>>> was referring to not work either.  So I’m confused about why 
>>>>> there’s all this extra filtering going on in this change and why 
>>>>> it would be needed.  Unless there are important differences in 
>>>>> some of the underlying infrastructure, like the different 
>>>>> testlibrary variants (jdk/test/lib/testlibrary vs hotspot’s 
>>>>> testlibrary?).  Sorry I’m not being clearer about this - I’m 
>>>>> suspicious there is a deeper problem, but don’t know enough to 
>>>>> point to its whereabouts.  (And that’s assuming my suspicions are 
>>>>> correct, and I’m not just confused.)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>
>>
>>
>



More information about the hotspot-gc-dev mailing list