JDK-8027132: Print deprecation warning message for the flags controlling the CMS foreground collector
Bengt Rutisson
bengt.rutisson at oracle.com
Thu Oct 24 11:41:46 UTC 2013
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