JDK-8027132: Print deprecation warning message for the flags controlling the CMS foreground collector

Erik Helin erik.helin at oracle.com
Thu Oct 24 12:26:52 UTC 2013


Hi Bengt,

looks good, thanks for doing this!

Erik

On 2013-10-24, Bengt Rutisson wrote:
> 
> Hi all,
> 
> Can I have a couple of reviews for this small change?
> 
> http://cr.openjdk.java.net/~brutisso/8027132/webrev.00/
> 
> CR: https://bugs.openjdk.java.net/browse/JDK-8027132
> 
> Background from the CR:
> 
> Normally CMS reverts to the SerialOld GC when it needs to do a full
> GC. There is a mode in CMS to instead use the "foreground
> collector".  This is a single threaded stop-the-world mode which
> completes an ongoing concurrent CMS collection (a normal
> "background" collection in CMS).
> 
> The foreground collector is very slow and to enable it two flags are
> required. First -XX:-UseCMSCompactAtFullCollection needs to be added
> to the command line to turn off the SerialOld collector, then
> -XX:CMSFullGCsBeforeCompaction needs to be set to a value greater
> than 0.
> 
> The foreground collector adds a lot of complexity to the CMS code
> but has few (if any?) use cases. Thus, it would be good to remove it
> to simplify the code. In order to remove it we need to deprecate it
> first. This bug report is only about deprecating the flags to allow
> us to remove the foreground collector in a future release.
> 
> The following flags should log a warning message that they are
> deprecated, but the VM should still continue to work when they are
> used:
> 
> UseCMSCompactAtFullCollection
> CMSFullGCsBeforeCompaction
> UseCMSCollectionPassing
> 
> Thanks,
> Bengt



More information about the hotspot-gc-dev mailing list