Request for review (S): 7166894 Add gc cause to Full GC logging for all collectors

Krystal Mok rednaxelafx at
Tue May 8 14:43:23 UTC 2012

Hi Bengt,

The current factoring looks nice and uniform. Thanks :-)

But for most minor GCs and both CMS pause phases, the extra logging doesn't
really give additional information.
Most minor GCs are going to say "Allocation Failure", and the two CMS
phases would change from, e.g.

[GC [1 CMS-initial-mark

to something like

[GC (CMS Initial Mark) [1 CMS-initial-mark

which is probably reasonable given the scope of the change, but not really
The "real cause", such as which generation (or perhaps System.gc() with
ExplicitGCInvokesConcurrent, or even GC locker) is triggering this
collection cycle, may be more useful, but it's hard to fit into the current

- Kris

On Tue, May 8, 2012 at 10:18 PM, Bengt Rutisson
<bengt.rutisson at>wrote:

> Hi again everyone,
> It seems like the feedback on hotspot-gc-use is that we should add the GC
> cause to all collectors but also provide a switch to turn this logging off.
> Here is an updated webrev:
> Changes:
> * GC cause logged for all collectors
> * Added the flag -XX:-PrintGCCause to turn the new information off
> * Refactored the string concatenation code into a helper class
> I guess I will also have to update the CR to now reflect the fact that
> this does not just concern full GCs anymore.
> Thanks,
> Bengt
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the hotspot-gc-dev mailing list