diff --git a/conf/cassandra-env.sh b/conf/cassandra-env.sh index 755f9623fb..3f4c21b088 100644 --- a/conf/cassandra-env.sh +++ b/conf/cassandra-env.sh @@ -221,6 +221,10 @@ JVM_OPTS="$JVM_OPTS -XX:CompileCommandFile=$CASSANDRA_CONF/hotspot_compiler" JVM_OPTS="$JVM_OPTS -XX:CMSWaitDuration=10000" # note: bash evals '1.7.x' as > '1.7' so this is really a >= 1.7 jvm check +if { [ "$JVM_VERSION" \> "1.7" ] && [ "$JVM_VERSION" \< "1.8.0" ] && [ "$JVM_PATCH_VERSION" -ge "60" ]; } || [ "$JVM_VERSION" \> "1.8" ] ; then + JVM_OPTS="$JVM_OPTS -XX:+CMSParallelInitialMarkEnabled -XX:+CMSEdenChunksRecordAlways -XX:CMSWaitDuration=10000" +fi + if [ "$JVM_ARCH" = "64-Bit" ] ; then JVM_OPTS="$JVM_OPTS -XX:+UseCondCardMark" fi