title: Java CMS garbage collector log output
body: <p>I am using the Java CMS garbage collector and trying to understand log lines like:</p>
  
  <pre><code>22609.787: [GC 22609.788: [ParNew: 1116101K-&gt;79200K(1310720K), 0.2369136 secs]     1551730K-&gt;516431K(6029312K), 0.2379422 secs] [Times: user=1.68 sys=0.02, real=0.24 secs] 
  22610.741: [Full GC 22610.741: [CMS: 437230K-&gt;278442K(4718592K), 14.8596841 secs]   573355K-&gt;278442K(6029312K), [CMS Perm : 241468K-&gt;236967K(241856K)], 14.8694544 secs]   [Times: user=14.80 sys=0.13, real=14.87 secs] 
  22635.415: [GC 22635.416: [ParNew: 1048576K-&gt;43613K(1310720K), 0.0904065 secs] 1327018K-&gt;322055K(6029312K), 0.0914701 secs] [Times: user=0.45 sys=0.00, real=0.09 secs] 
  </code></pre>
  
  <p>Based on reading <a href="http://blogs.oracle.com/poonam/entry/understanding_cms_gc_logs" rel="nofollow">http://blogs.oracle.com/poonam/entry/understanding_cms_gc_logs</a> the CMS will do a full garbage collection in various situations (e.g. if "promotion in a scavenge attempt fails"), but according to that blog, it would log the reason for the full GC.  </p>
  
  <p>Instead I'm seeing adhoc full GCs.  It definitely is CMS because there are other CMS log entries.</p>
  
  <p>Are there reasons it would do a full GC but not log the reason why?</p>
  
  <p>EDIT: 
  Sorry, multiple java installations (I've inherited this setup).  It's actually using jdk1.6.0_27</p>
  
  <p>EDIT
  Unfortunately the JVM parameters are wrapped up in config files (this is a commercial app that runs on Tomcat), but I'm pretty sure they are:</p>
  
  <pre><code>min.heapsize=6144m
  max.heapsize=6144m
  -Xss=512k
  -XX:MaxPermSize=512m
  -XX:NewSize=1536m 
  -XX:MaxNewSize=1536m 
  -XX:SurvivorRatio=4 
  -XX:+UseConcMarkSweepGC 
  -XX:+UseParNewGC 
  -XX:+UseTLAB 
  -XX:+UseCompressedOops 
  -XX:+PrintVMOptions 
  -XX:+PrintGCDetails 
  -XX:+PrintGCTimeStamps 
  -XX:+PrintGCTaskTimeStamps
  -XX:+PrintCommandLineFlags 
  -XX:+PrintGCApplicationStoppedTime 
  -XX:StackShadowPages=20 
  -XX:+DisableExplicitGC 
  </code></pre>