RFR(S): 7198849: Make javax/management/remote/mandatory/notif/ListenerScaleTest.java less timing sensitive

Staffan Larsen staffan.larsen at oracle.com
Mon Sep 17 03:41:06 PDT 2012


Thanks Alan!

On 17 sep 2012, at 11:40, Alan Bateman <Alan.Bateman at oracle.com> wrote:

> On 17/09/2012 10:16, Staffan Larsen wrote:
>> The test sometimes fails with a ratio somewhere in the low 100s. If the timing was indeed linear in the number of listeners, the ratio would be 20000. Increasing the allowed ration to 500 (from 100) should therefore still catch the real regression, but make the test more robust.
>> 
>> Thanks,
>> /Staffan
>> 
>> 
>> diff --git a/test/javax/management/remote/mandatory/notif/ListenerScaleTest.java b/test/javax/management/remote/mandatory/notif/ListenerScaleTest.java
>> --- a/test/javax/management/remote/mandatory/notif/ListenerScaleTest.java
>> +++ b/test/javax/management/remote/mandatory/notif/ListenerScaleTest.java
>> @@ -45,7 +45,7 @@
>>   *
>>   * As usual with timing-sensitive tests, we could potentially get
>>   * sporadic failures.  We fail if the ratio of the time with many
>> - * MBeans to the time with just one MBean is more than 100.  With the
>> + * MBeans to the time with just one MBean is more than 500.  With the
>>   * fix in place, it is usually less than 1, presumably because some
>>   * code was being interpreted during the first measurement but had
>>   * been compiled by the second.
>> @@ -176,7 +176,7 @@
>>          long manyMBeansTime = timeNotif(mbs);
>>          System.out.println("Time with many MBeans: " + manyMBeansTime + "ns");
>>          double ratio = (double) manyMBeansTime / singleMBeanTime;
>> -        if (ratio>  100.0)
>> +        if (ratio>  500.0)
>>              throw new Exception("Failed: ratio=" + ratio);
>>          System.out.println("Test passed: ratio=" + ratio);
>>      }
> Looks okay to me, and we can see over the next few weeks if this is good enough.
> 
> -Alan



More information about the serviceability-dev mailing list