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