diff --git a/hadoop-ozone/dist/src/shell/ozone/ozone-functions.sh b/hadoop-ozone/dist/src/shell/ozone/ozone-functions.sh index c646dfc65f25..325d6daa50b2 100755 --- a/hadoop-ozone/dist/src/shell/ozone/ozone-functions.sh +++ b/hadoop-ozone/dist/src/shell/ozone/ozone-functions.sh @@ -1520,17 +1520,15 @@ function ozone_translate_cygwin_path ## @replaceable yes function ozone_add_default_gc_opts { - java_major_version=$(ozone_get_java_major_version) if [[ "${OZONE_SUBCMD_SUPPORTDAEMONIZATION}" == true ]]; then - if [[ ! "$OZONE_OPTS" =~ "-XX" ]] ; then - OZONE_OPTS="${OZONE_OPTS} -XX:ParallelGCThreads=8" - if [[ "$java_major_version" -lt 15 ]]; then - OZONE_OPTS="${OZONE_OPTS} -XX:+UseConcMarkSweepGC -XX:NewRatio=3 -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSParallelRemarkEnabled" - ozone_error "No '-XX:...' jvm parameters are set. Adding safer GC settings '-XX:ParallelGCThreads=8 -XX:+UseConcMarkSweepGC -XX:NewRatio=3 -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSParallelRemarkEnabled' to the OZONE_OPTS" - else - ozone_error "No '-XX:...' jvm parameters are set. Adding safer GC settings '-XX:ParallelGCThreads=8' to the OZONE_OPTS" - fi + local gc_opts + local java_major_version + java_major_version=$(ozone_get_java_major_version) + gc_opts="-XX:ParallelGCThreads=8" + if [[ "$java_major_version" -lt 15 ]]; then + gc_opts="${gc_opts} -XX:+UseConcMarkSweepGC -XX:NewRatio=3 -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSParallelRemarkEnabled" fi + ozone_add_param OZONE_OPTS XX "${gc_opts}" fi }