RFR: 8066122: CollectionUsageThreshold.java times out when run with -XX:+ExplicitGCInvokesConcurrent
Michail Chernov
michail.chernov at oracle.com
Wed Dec 24 14:42:22 UTC 2014
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