This is an automated email from the ASF dual-hosted git repository.

wuweijie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 6ac55dc0ea2 Fix JAVA_MEM_OPTS cannot be ajdusted to Cgroup limits for 
Docker Environment. (#20781)
6ac55dc0ea2 is described below

commit 6ac55dc0ea21d29914c640e01b41d639e7bba4ad
Author: pierce <[email protected]>
AuthorDate: Mon Sep 5 10:53:13 2022 +0800

    Fix JAVA_MEM_OPTS cannot be ajdusted to Cgroup limits for Docker 
Environment. (#20781)
    
    Signed-off-by: xuanyuan300 <[email protected]>
---
 .../src/main/resources/bin/start.sh                | 23 ++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

diff --git 
a/shardingsphere-distribution/shardingsphere-proxy-distribution/src/main/resources/bin/start.sh
 
b/shardingsphere-distribution/shardingsphere-proxy-distribution/src/main/resources/bin/start.sh
index b99d08f0d56..2320b4fc322 100644
--- 
a/shardingsphere-distribution/shardingsphere-proxy-distribution/src/main/resources/bin/start.sh
+++ 
b/shardingsphere-distribution/shardingsphere-proxy-distribution/src/main/resources/bin/start.sh
@@ -74,9 +74,28 @@ else
     echo "unadapted java version, please notice..."
 fi
 
+DEFAULT_CGROUP_MEM_OPTS=""
+if [ "$int_version" = '8' ] ; then
+       DEFAULT_CGROUP_MEM_OPTS=" -XX:+UnlockExperimentalVMOptions 
-XX:+UseCGroupMemoryLimitForHeap -XX:InitialRAMPercentage=80.0 
-XX:MinRAMPercentage=80.0 -XX:MaxRAMPercentage=80.0 "
+else
+       DEFAULT_CGROUP_MEM_OPTS=" -XX:InitialRAMPercentage=80.0 
-XX:MinRAMPercentage=80.0 -XX:MaxRAMPercentage=80.0 "
+fi
+
+CGROUP_MEM_OPTS="${CGROUP_MEM_OPTS:-${DEFAULT_CGROUP_MEM_OPTS}}"
+
 JAVA_OPTS=" -Djava.awt.headless=true "
 
-JAVA_MEM_OPTS=" -server -Xmx2g -Xms2g -Xmn1g -Xss1m -XX:AutoBoxCacheMax=4096 
-XX:+UseNUMA -XX:+DisableExplicitGC -XX:LargePageSizeInBytes=128m 
${VERSION_OPTS} -Dio.netty.leakDetection.level=DISABLED "
+DEFAULT_JAVA_MEM_COMMON_OPTS=" -Xmx2g -Xms2g -Xmn1g "
+if [ -n "${IS_DOCKER}" ]; then
+       JAVA_MEM_COMMON_OPTS="${CGROUP_MEM_OPTS}"
+else
+       
JAVA_MEM_COMMON_OPTS="${JAVA_MEM_COMMON_OPTS:-${DEFAULT_JAVA_MEM_COMMON_OPTS}}"
+fi
+
+JAVA_MEM_OPTS=" -server ${JAVA_MEM_COMMON_OPTS} -Xss1m 
-XX:AutoBoxCacheMax=4096 -XX:+UseNUMA -XX:+DisableExplicitGC 
-XX:LargePageSizeInBytes=128m ${VERSION_OPTS} 
-Dio.netty.leakDetection.level=DISABLED "
+
+
+
 
 MAIN_CLASS=org.apache.shardingsphere.proxy.Bootstrap
 
@@ -160,7 +179,7 @@ MAIN_CLASS="${MAIN_CLASS} ${PORT} ${CONF_PATH} ${ADDRESSES}"
 echo "The classpath is ${CLASS_PATH}"
 echo "main class ${MAIN_CLASS}"
 
-if [ "${IS_DOCKER}" ]; then
+if [ -n "${IS_DOCKER}" ]; then
   exec $JAVA ${JAVA_OPTS} ${JAVA_MEM_OPTS} -classpath ${CLASS_PATH} 
${MAIN_CLASS}
   exit 0
 fi

Reply via email to