RFR: 8026047: [TESTBUG] add regression test for DisableExplicitGC flag

Michail Chernov michail.chernov at oracle.com
Wed Feb 11 15:33:59 UTC 2015


Hi Bengt,

Test works with all options passed to jtreg during testing ( see line 
97         vmOpts.addAll(0, Utils.getVmOptions());). Doesn't need to 
check all GC's, it will be done during nightly.

44     public final static String[] PARALLEL_GC_OPTIONS = 
{"UseParallelGC", "UseParallelOldGC"};
Here is defined special options. If define one of these options - will 
be used other pattern to match output.

But it seems to me a little bit wrong. I've checked output of GC log 
with different GCs and ExplicitGCInvokesConcurrent. Message "Full GC 
(System.gc())" does not appear only in case of using G1 or CMS with 
ExplicitGCInvokesConcurrent=true. Will fix it.

Thanks,
Michail
On 11.02.2015 16:15, Bengt Rutisson wrote:
>
> Hi Michail,
>
> On 11/02/15 13:55, Michail Chernov wrote:
>> Hi,
>>
>> Still hoping for review!
>
> Sorry for being so late in looking at this.
>
> A couple of questions:
>
> Why does the test only test the parallel GC? DisableExplicitGC is 
> valid for all GCs.
>
> What do you think about writing this test similar to other tests that 
> validate the output from the GC logging? Here's an example:
>
> http://hg.openjdk.java.net/jdk9/hs-gc/hotspot/file/566574421b40/test/gc/g1/TestGCLogMessages.java 
>
>
> Thanks,
> Bengt
>
>>
>> Thanks,
>> Michail
>>
>> On 05.02.2015 21:05, Michail Chernov wrote:
>>> Hi,
>>>
>>> Still waiting for reviews!
>>>
>>> Thanks,
>>> Michail
>>>
>>> On 03.02.2015 20:12, Michail Chernov wrote:
>>>> Hi,
>>>>
>>>> Can someone take a look on these changes, please?
>>>>
>>>> Thanks,
>>>> Michail
>>>>
>>>> On 30.01.2015 18:33, Michail Chernov wrote:
>>>>> Hi Leonid,
>>>>>
>>>>> Issues were fixed:
>>>>> http://cr.openjdk.java.net/~eistepan/~mchernov/8026047/webrev.01/
>>>>>
>>>>> Now all testcases are executed  from the same VM.
>>>>>
>>>>> Thanks,
>>>>> Michail
>>>>>
>>>>> On 28.01.2015 18:28, Leonid Mesnik wrote:
>>>>>> Hi
>>>>>>
>>>>>> Why is it needed to start VM twice for each test. It is very 
>>>>>> expensive especially for low-end devices.
>>>>>>
>>>>>> Is it possible to have driver which starts VM several times with 
>>>>>> different combinations of options and check it output/exit code 
>>>>>> etc? Also it would be much easier to read such test.
>>>>>>
>>>>>>
>>>>>> Leonid
>>>>>>
>>>>>> On 27.01.2015 18:35, Michail Chernov wrote:
>>>>>>> Hi all,
>>>>>>>
>>>>>>> Please review the fix with new test for DisableExplicitGC VM flag.
>>>>>>>
>>>>>>> Webrev: 
>>>>>>> http://cr.openjdk.java.net/~eistepan/~mchernov/8026047/webrev.00/
>>>>>>> Enhancement: https://bugs.openjdk.java.net/browse/JDK-8026047
>>>>>>>
>>>>>>> There is one scenario with 6 parameters combinations.
>>>>>>>
>>>>>>> 1,2,3 scenarios test default value for DisableExplicitGC, 
>>>>>>> DisableExplicitGC=true and DisableExplicitGC=false
>>>>>>> 4,5,6 scenarios check how VM works when VM changes 
>>>>>>> DisableExplicitGC flag using WhiteBox.
>>>>>>>
>>>>>>> Test tries to call System.gc() and check that VM puts message to 
>>>>>>> stdout. After (in case of 4,5,6 scenarios) test tries to change 
>>>>>>> DisableExplicitGC value and calls System.gc() twice.
>>>>>>>
>>>>>>> Test was executed locally on linux-i586 with all available GC 
>>>>>>> and several GC-related flags. Also it was executed using Aurora 
>>>>>>> on other platforms.
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Michail
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>
>
>



More information about the hotspot-gc-dev mailing list