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:07:47 UTC 2016
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