This is an automated email from the ASF dual-hosted git repository. yiguolei pushed a commit to branch branch-2.1 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 6ea5218ee82cafafef574acf39c3c741ca858b4b Author: yiguolei <yiguo...@gmail.com> AuthorDate: Wed Mar 6 13:13:49 2024 +0800 Revert "[Enhencement](env) Checking Master branch must use JDK17 (#31587)" This reverts commit fa499cc200344eaaf837fd52211820dc7b7b9296. --- bin/start_be.sh | 13 +++++++-- bin/start_fe.sh | 12 +++++--- conf/fe.conf | 2 +- env.sh | 86 ++++++--------------------------------------------------- 4 files changed, 28 insertions(+), 85 deletions(-) diff --git a/bin/start_be.sh b/bin/start_be.sh index 0f6def08fbd..34b2dbeaf87 100755 --- a/bin/start_be.sh +++ b/bin/start_be.sh @@ -298,14 +298,21 @@ 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" -if [[ "${java_version}" -eq 17 ]]; then +if [[ "${java_version}" -gt 16 ]]; then if [[ -z ${JAVA_OPTS_FOR_JDK_17} ]]; then JAVA_OPTS_FOR_JDK_17="-Xmx1024m ${LOG_PATH} -Xlog:gc:${DORIS_HOME}/log/be.gc.log.${CUR_DATE} ${COMMON_OPTS} --add-opens=java.base/java.net=ALL-UNNAMED" fi final_java_opt="${JAVA_OPTS_FOR_JDK_17}" +elif [[ "${java_version}" -gt 8 ]]; then + 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}" + fi + final_java_opt="${JAVA_OPTS_FOR_JDK_9}" else - echo "ERROR: The jdk_version is ${java_version}, it must be 17." >>"${LOG_DIR}/be.out" - exit 1 + if [[ -z ${JAVA_OPTS} ]]; then + JAVA_OPTS="-Xmx1024m ${LOG_PATH} -Xloggc:${DORIS_HOME}/log/be.gc.log.${CUR_DATE} ${COMMON_OPTS}" + fi + final_java_opt="${JAVA_OPTS}" fi if [[ "${MACHINE_OS}" == "Darwin" ]]; then diff --git a/bin/start_fe.sh b/bin/start_fe.sh index 83496bf7bd7..dc8d7857841 100755 --- a/bin/start_fe.sh +++ b/bin/start_fe.sh @@ -180,15 +180,19 @@ java_version="$( set -e jdk_version "${JAVA}" )" -if [[ "${java_version}" -eq 17 ]]; then +final_java_opt="${JAVA_OPTS}" +if [[ "${java_version}" -gt 16 ]]; then if [[ -z "${JAVA_OPTS_FOR_JDK_17}" ]]; then echo "JAVA_OPTS_FOR_JDK_17 is not set in fe.conf" >>"${LOG_DIR}/fe.out" exit 1 fi final_java_opt="${JAVA_OPTS_FOR_JDK_17}" -else - echo "ERROR: The jdk_version is ${java_version}, it must be 17." >>"${LOG_DIR}/fe.out" - exit 1 +elif [[ "${java_version}" -gt 8 ]]; then + if [[ -z "${JAVA_OPTS_FOR_JDK_9}" ]]; then + echo "JAVA_OPTS_FOR_JDK_9 is not set in fe.conf" >>"${LOG_DIR}/fe.out" + exit 1 + fi + final_java_opt="${JAVA_OPTS_FOR_JDK_9}" fi echo "using java version ${java_version}" >>"${LOG_DIR}/fe.out" echo "${final_java_opt}" >>"${LOG_DIR}/fe.out" diff --git a/conf/fe.conf b/conf/fe.conf index 756e83b5457..66794ddf3fa 100644 --- a/conf/fe.conf +++ b/conf/fe.conf @@ -39,7 +39,7 @@ JAVA_OPTS="-Djavax.security.auth.useSubjectCredsOnly=false -Xss4m -Xmx8192m -XX: JAVA_OPTS_FOR_JDK_9="-Djavax.security.auth.useSubjectCredsOnly=false -Xss4m -Xmx8192m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Xlog:gc*:$DORIS_HOME/log/fe.gc.log.$CUR_DATE:time -Dlog4j2.formatMsgNoLookups=true" # For jdk 17+, this JAVA_OPTS will be used as default JVM options -JAVA_OPTS_FOR_JDK_17="-Djavax.security.auth.useSubjectCredsOnly=false -Xmx8192m -Xms8192m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$DORIS_HOME/log/ -Xlog:gc*:$DORIS_HOME/log/fe.gc.log.$CUR_DATE:time" +JAVA_OPTS_FOR_JDK_17="-Djavax.security.auth.useSubjectCredsOnly=false -XX:+UseZGC -Xmx8192m -Xms8192m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$DORIS_HOME/log/ -Xlog:gc*:$DORIS_HOME/log/fe.gc.log.$CUR_DATE:time" ## ## the lowercase properties are read by main program. diff --git a/env.sh b/env.sh index 5f2cef57e69..835d8cafc92 100755 --- a/env.sh +++ b/env.sh @@ -199,53 +199,6 @@ CLANG_COMPATIBLE_FLAGS="$(echo | "${DORIS_GCC_HOME}/bin/gcc" -Wp,-v -xc++ - -fsy grep -E '^\s+/' | awk '{print "-I" $1}' | tr '\n' ' ')" export CLANG_COMPATIBLE_FLAGS -# get jdk version, return version as an Integer. -# 1.8 => 8, 13.0 => 13 -function jdk_version() { - local java_cmd="${1}" - local result - local IFS=$'\n' - - if [[ -z "${java_cmd}" ]]; then - result=no_java - return 1 - else - local version - # remove \r for Cygwin - version="$("${java_cmd}" -Xms32M -Xmx32M -version 2>&1 | tr '\r' '\n' | grep version | awk '{print $3}')" - version="${version//\"/}" - if [[ "${version}" =~ ^1\. ]]; then - result="$(echo "${version}" | awk -F '.' '{print $2}')" - else - result="$(echo "${version}" | awk -F '.' '{print $1}')" - fi - fi - echo "${result}" - return 0 -} - -# check java version -# must use jdk_17 -function check_jdk_version() { - if [[ ! -x "${JAVA}" ]]; then - echo "The JAVA_HOME environment variable is not defined correctly" - echo "This environment variable is needed to run this program" - echo "NB: JAVA_HOME should point to a JDK not a JRE" - exit 1 - fi - - echo "Check JAVA version" - java_version="$( - set -e - jdk_version "${JAVA}" - )" - if [[ "${java_version}" -ne 17 ]]; then - echo "ERROR: The JAVA version is ${java_version}, it must be JDK-17." - exit 1 - fi - return 0 -} - # if is called from build-thirdparty.sh, no need to check these tools if test -z "${BUILD_THIRDPARTY_WIP:-}"; then # register keyword is forbidden to use in C++17 @@ -260,42 +213,21 @@ if test -z "${BUILD_THIRDPARTY_WIP:-}"; then # check java home if [[ -z "${JAVA_HOME}" ]]; then - if [[ -n "${JDK_17}" ]]; then - echo "Use JDK_17 = ${JDK_17}" - JAVA="${JDK_17}/bin/java" - JAVAP="${JDK_17}/bin/javap" - export JAVA_HOME="${JDK_17}" - else - JAVA="$(command -v java)" - JAVAP="$(command -v javap)" - fi - check_jdk_version + JAVA="$(command -v java)" + JAVAP="$(command -v javap)" else JAVA="${JAVA_HOME}/bin/java" JAVAP="${JAVA_HOME}/bin/javap" - - echo "Check JAVA_HOME version" - java_version="$( - set -e - jdk_version "${JAVA}" - )" - if [[ "${java_version}" -ne 17 ]]; then - echo "JAVA_HOME=${JAVA_HOME}. It does not point to JDK-17." - if [[ -n "${JDK_17}" ]]; then - echo "Use JDK_17=${JDK_17}." - JAVA="${JDK_17}/bin/java" - JAVAP="${JDK_17}/bin/javap" - export JAVA_HOME="${JDK_17}" - check_jdk_version - else - echo "The 'JDK_17' environment variable is not set." - echo "ERROR: The JAVA version is ${java_version}, it must be JDK-17." - exit 1 - fi - fi fi export JAVA + if [[ ! -x "${JAVA}" ]]; then + echo "The JAVA_HOME environment variable is not defined correctly" + echo "This environment variable is needed to run this program" + echo "NB: JAVA_HOME should point to a JDK not a JRE" + exit 1 + fi + JAVA_VER="$("${JAVAP}" -verbose java.lang.String | grep "major version" | cut -d " " -f5)" if [[ "${JAVA_VER}" -lt 52 ]]; then echo "Error: require JAVA with JDK version at least 1.8" --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org