This is an automated email from the ASF dual-hosted git repository. morningman pushed a commit to branch branch-1.2-lts in repository https://gitbox.apache.org/repos/asf/doris.git
commit e6c0926738298f4e83306cbfeb3585f7aee29007 Author: yongkang.zhong <[email protected]> AuthorDate: Thu Apr 27 13:48:46 2023 +0800 [optimization](conf) optimization JAVA_OPTS for be conf and be bin (#19029) --- bin/start_be.sh | 29 +++++++++++++++++++++++------ conf/be.conf | 5 ++++- 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/bin/start_be.sh b/bin/start_be.sh index 4124f22985..cb37a54cf8 100755 --- a/bin/start_be.sh +++ b/bin/start_be.sh @@ -262,18 +262,35 @@ if [[ -f "${DORIS_HOME}/conf/hdfs-site.xml" ]]; then export LIBHDFS3_CONF="${DORIS_HOME}/conf/hdfs-site.xml" fi -if [[ -z ${JAVA_OPTS} ]]; then - # set default JAVA_OPTS - CUR_DATE=$(date +%Y%m%d-%H%M%S) - JAVA_OPTS="-Xmx1024m -DlogPath=${DORIS_HOME}/log/jni.log -Xloggc:${DORIS_HOME}/log/be.gc.log.${CUR_DATE} -Dsun.java.command=DorisBE -XX:-CriticalJNINatives" +# check java version and choose correct JAVA_OPTS +java_version="$( + set -e + jdk_version "${JAVA_HOME}/bin/java" +)" + +CUR_DATE=$(date +%Y%m%d-%H%M%S) +LOG_PATH="-DlogPath=${DORIS_HOME}/log/jni.log" +COMMON_OPTS="-Dsun.java.command=DorisBE -XX:-CriticalJNINatives" +JDBC_OPTS="-DJDBC_MIN_POOL=1 -DJDBC_MAX_POOL=100 -DJDBC_MAX_IDEL_TIME=300000" + +if [[ "${java_version}" -gt 8 ]]; then + if [[ -z ${JAVA_OPTS} ]]; then + JAVA_OPTS="-Xmx1024m ${LOG_PATH} -Xloggc:${DORIS_HOME}/log/be.gc.log.${CUR_DATE} ${COMMON_OPTS} ${JDBC_OPTS}" + fi + final_java_opt="${JAVA_OPTS}" +else + if [[ -z ${JAVA_OPTS_FOR_JDK_9} ]]; then + JAVA_OPTS_FOR_JDK_9="-Xmx1024m ${LOG_PATH} -Xlog:gc:${DORIS_HOME}/log/be.gc.log.${CUR_DATE} ${COMMON_OPTS} ${JDBC_OPTS}" + fi + final_java_opt="${JAVA_OPTS_FOR_JDK_9}" fi if [[ "${MACHINE_OS}" == "Darwin" ]]; then - JAVA_OPTS="${JAVA_OPTS} -XX:-MaxFDLimit" + final_java_opt="${final_java_opt} -XX:-MaxFDLimit" fi # set LIBHDFS_OPTS for hadoop libhdfs -export LIBHDFS_OPTS="${JAVA_OPTS}" +export LIBHDFS_OPTS="${final_java_opt}" #echo "CLASSPATH: ${CLASSPATH}" #echo "LD_LIBRARY_PATH: ${LD_LIBRARY_PATH}" diff --git a/conf/be.conf b/conf/be.conf index e62925fc41..dcb9135813 100644 --- a/conf/be.conf +++ b/conf/be.conf @@ -18,7 +18,10 @@ PPROF_TMPDIR="$DORIS_HOME/log/" CUR_DATE=`date +%Y%m%d-%H%M%S` -JAVA_OPTS="-Xmx1024m -DlogPath=$DORIS_HOME/log/jni.log -Xlog:gc:$DORIS_HOME/log/be.gc.log.$CUR_DATE -Dsun.java.command=DorisBE -XX:-CriticalJNINatives -DJDBC_MIN_POOL=1 -DJDBC_MAX_POOL=100 -DJDBC_MAX_IDEL_TIME=300000" +JAVA_OPTS="-Xmx1024m -DlogPath=$DORIS_HOME/log/jni.log -Xloggc:$DORIS_HOME/log/be.gc.log.$CUR_DATE -Dsun.java.command=DorisBE -XX:-CriticalJNINatives -DJDBC_MIN_POOL=1 -DJDBC_MAX_POOL=100 -DJDBC_MAX_IDEL_TIME=300000" + +# For jdk 9+, this JAVA_OPTS will be used as default JVM options +JAVA_OPTS_FOR_JDK_9="-Xmx1024m -DlogPath=$DORIS_HOME/log/jni.log -Xlog:gc:$DORIS_HOME/log/be.gc.log.$CUR_DATE -Dsun.java.command=DorisBE -XX:-CriticalJNINatives -DJDBC_MIN_POOL=1 -DJDBC_MAX_POOL=100 -DJDBC_MAX_IDEL_TIME=300000" # since 1.2, the JAVA_HOME need to be set to run BE process. # JAVA_HOME=/path/to/jdk/ --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
