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