RFR: JDK-8151912: guarantee(GCPauseIntervalMillis >= 1) failed: Constraint for GCPauseIntervalMillis should guarantee that value is >= 1

Bengt Rutisson bengt.rutisson at oracle.com
Wed Mar 16 14:18:18 UTC 2016


Hi Tom,

On 2016-03-16 15:16, Tom Benson wrote:
> Looks good.

Thanks Tom.

Bengt

> Tom
>
> On 3/16/2016 10:07 AM, Bengt Rutisson wrote:
>>
>> Hi all,
>>
>> Could I have a couple of reviews for this change?
>>
>> http://cr.openjdk.java.net/~brutisso/8151912/webrev.00/
>> https://bugs.openjdk.java.net/browse/JDK-8151912
>>
>> The problem is that we do this during setup of G1CollectorPolicy:
>>
>>     FLAG_SET_DEFAULT(GCPauseIntervalMillis, MaxGCPauseMillis + 1);
>>
>> If MaxGCPauseMillis is max uint we will overflow and 
>> GCPauseIntervalMillis will be 0.
>>
>> Before JDK-8151604 we did not notice this overflow.
>>
>> The proposed change reduces the max value for MaxGCPauseMillis to 
>> max_uint - 1. I think it can be argued that we should have a more 
>> reasonable max value, but I don't have a good suggestion for what 
>> that value would be. So, for now, to fix the current failures in 
>> nightly testing, I propose to just reduce it to the largest value 
>> that we can actually handle.
>>
>> I am changing the default value too to match this. As a separate 
>> change it would probably be good to change the default to 200 ms. But 
>> since ParallelGC uses the same flag in a different way it is not a 
>> straight forward fix to do.
>>
>> Thanks,
>> Bengt
>



More information about the hotspot-gc-dev mailing list