CMSInitiatingOccupancyFraction not having any effect on GC trigger

Hi,
CMSInitiatingOccupancyFraction=75 flag does not seem to have any effect on GC. The GC starts at about 85-95 % old gen usage and makes the cluster status as yellow. I am using 1.7 version with java 8. Any idea what might trigger it? Below are the flags:

/bin/java -Xms30g -Xmx30g -Djava.awt.headless=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -XX:+DisableExplicitGC -Dfile.encoding=UTF-8 -XX:+CMSClassUnloadingEnabled -XX:-AssumeMP

Hi,

please see Oracle's GC tuning guide and the JVM options documentation for Java 8 for details about these flags. I suggest that you enable garbage collection logs and inspect them to analyze GC behavior. You can start by adding the following flags:

-XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -XX:+PrintGCApplicationStoppedTime -Xloggc:/path/to/your/gc/log/file/here/gc.log -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=32 -XX:GCLogFileSize=64m

(these are derived from our default GC log configuration in newer versions of Elasticsearch).

Daniel

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.