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

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


The following commit(s) were added to refs/heads/master by this push:
     new ee645bd  IGNITE-13479 Control.sh script should use its own system 
variable for setting JVM options instead of JVM_OPTS - Fixes #8275.
ee645bd is described below

commit ee645bda324771d4e24fb9670fad4d7f51fc6c34
Author: Semyon Danilov <[email protected]>
AuthorDate: Fri Oct 2 15:10:37 2020 +0300

    IGNITE-13479 Control.sh script should use its own system variable for 
setting JVM options instead of JVM_OPTS - Fixes #8275.
    
    Signed-off-by: Sergey Chugunov <[email protected]>
---
 bin/control.bat | 50 ++++++++++++++++++++++++++++++--------------------
 bin/control.sh  | 41 +++++++++++++++++++++++------------------
 bin/ignite.bat  |  9 +++++++--
 3 files changed, 60 insertions(+), 40 deletions(-)

diff --git a/bin/control.bat b/bin/control.bat
index 45a8042..8b09649 100644
--- a/bin/control.bat
+++ b/bin/control.bat
@@ -153,9 +153,14 @@ if "%JMX_PORT%" == "" (
     echo %0, WARN: Failed to resolve JMX host. JMX will be disabled.
     set JMX_MON=
 ) else (
-    set JMX_MON=-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=%JMX_PORT% ^
-    -Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false
-)
+     if "%JMX_PORT%" == "IGNITE_JMX_PORT_IS_BUSY" (
+         echo %0, WARN: Provided IGNITE_JMX_PORT is busy. JMX will be disabled.
+         set JMX_MON=
+     ) else (
+         set JMX_MON=-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=%JMX_PORT% ^
+         -Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false
+     )
+ )
 
 ::
 :: JVM options. See 
http://java.sun.com/javase/technologies/hotspot/vmoptions.jsp for more details.
@@ -164,31 +169,31 @@ if "%JMX_PORT%" == "" (
 ::
 "%JAVA_HOME%\bin\java.exe" -version 2>&1 | findstr "1\.[7]\." > nul
 if %ERRORLEVEL% equ 0 (
-    if "%JVM_OPTS%" == "" set JVM_OPTS=-Xms256m -Xmx1g
+    if "%CONTROL_JVM_OPTS%" == "" set CONTROL_JVM_OPTS=-Xms256m -Xmx1g
 ) else (
-    if "%JVM_OPTS%" == "" set JVM_OPTS=-Xms256m -Xmx1g
+    if "%CONTROL_JVM_OPTS%" == "" set CONTROL_JVM_OPTS=-Xms256m -Xmx1g
 )
 
 ::
 :: Uncomment to enable experimental commands [--wal]
 ::
-:: set JVM_OPTS=%JVM_OPTS% -DIGNITE_ENABLE_EXPERIMENTAL_COMMAND=true
+:: set CONTROL_JVM_OPTS=%CONTROL_JVM_OPTS% 
-DIGNITE_ENABLE_EXPERIMENTAL_COMMAND=true
 
 ::
 :: Uncomment the following GC settings if you see spikes in your throughput 
due to Garbage Collection.
 ::
-:: set JVM_OPTS=%JVM_OPTS% -XX:+UseG1GC
+:: set CONTROL_JVM_OPTS=%CONTROL_JVM_OPTS% -XX:+UseG1GC
 
 ::
 :: Uncomment if you get StackOverflowError.
 :: On 64 bit systems this value can be larger, e.g. -Xss16m
 ::
-:: set JVM_OPTS=%JVM_OPTS% -Xss4m
+:: set CONTROL_JVM_OPTS=%CONTROL_JVM_OPTS% -Xss4m
 
 ::
 :: Uncomment to set preference to IPv4 stack.
 ::
-:: set JVM_OPTS=%JVM_OPTS% -Djava.net.preferIPv4Stack=true
+:: set CONTROL_JVM_OPTS=%CONTROL_JVM_OPTS% -Djava.net.preferIPv4Stack=true
 
 ::
 :: Assertions are disabled by default since version 3.5.
@@ -199,7 +204,7 @@ set ENABLE_ASSERTIONS=1
 ::
 :: Set '-ea' options if assertions are enabled.
 ::
-if %ENABLE_ASSERTIONS% == 1 set JVM_OPTS=%JVM_OPTS% -ea
+if %ENABLE_ASSERTIONS% == 1 set CONTROL_JVM_OPTS=%CONTROL_JVM_OPTS% -ea
 
 :run_java
 
@@ -212,20 +217,20 @@ if "%MAIN_CLASS%" == "" set 
MAIN_CLASS=org.apache.ignite.internal.commandline.Co
 ::
 :: Remote debugging (JPDA).
 :: Uncomment and change if remote debugging is required.
-:: set 
JVM_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8787 
%JVM_OPTS%
+:: set 
CONTROL_JVM_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8787
 %CONTROL_JVM_OPTS%
 ::
 
 ::
-:: Final JVM_OPTS for Java 9+ compatibility
+:: Final CONTROL_JVM_OPTS for Java 9+ compatibility
 ::
 if %MAJOR_JAVA_VER% == 8 (
-    set JVM_OPTS= ^
+    set CONTROL_JVM_OPTS= ^
     -XX:+AggressiveOpts ^
-    %JVM_OPTS%
+    %CONTROL_JVM_OPTS%
 )
 
 if %MAJOR_JAVA_VER% GEQ 9 if %MAJOR_JAVA_VER% LSS 11 (
-    set JVM_OPTS= ^
+    set CONTROL_JVM_OPTS= ^
     -XX:+AggressiveOpts ^
     --add-exports=java.base/jdk.internal.misc=ALL-UNNAMED ^
     --add-exports=java.base/sun.nio.ch=ALL-UNNAMED ^
@@ -234,11 +239,11 @@ if %MAJOR_JAVA_VER% GEQ 9 if %MAJOR_JAVA_VER% LSS 11 (
     --add-exports=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED 
^
     --illegal-access=permit ^
     --add-modules=java.xml.bind ^
-    %JVM_OPTS%
+    %CONTROL_JVM_OPTS%
 )
 
 if %MAJOR_JAVA_VER% GEQ 11 (
-    set JVM_OPTS= ^
+    set CONTROL_JVM_OPTS= ^
     --add-exports=java.base/jdk.internal.misc=ALL-UNNAMED ^
     --add-exports=java.base/sun.nio.ch=ALL-UNNAMED ^
     --add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED ^
@@ -246,15 +251,20 @@ if %MAJOR_JAVA_VER% GEQ 11 (
     --add-exports=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED 
^
     --add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED ^
     --illegal-access=permit ^
-    %JVM_OPTS%
+    %CONTROL_JVM_OPTS%
+)
+
+if defined JVM_OPTS (
+    echo JVM_OPTS environment variable is set, but will not be used. To pass 
JVM options use CONTROL_JVM_OPTS
+    echo JVM_OPTS=%JVM_OPTS%
 )
 
 if "%INTERACTIVE%" == "1" (
-    "%JAVA_HOME%\bin\java.exe" %JVM_OPTS% %QUIET% %RESTART_SUCCESS_OPT% 
%JMX_MON% ^
+    "%JAVA_HOME%\bin\java.exe" %CONTROL_JVM_OPTS% %QUIET% 
%RESTART_SUCCESS_OPT% %JMX_MON% ^
     -DIGNITE_UPDATE_NOTIFIER=false -DIGNITE_HOME="%IGNITE_HOME%" 
-DIGNITE_PROG_NAME="%PROG_NAME%" %JVM_XOPTS% ^
     -cp "%CP%" %MAIN_CLASS% %*
 ) else (
-    "%JAVA_HOME%\bin\java.exe" %JVM_OPTS% %QUIET% %RESTART_SUCCESS_OPT% 
%JMX_MON% ^
+    "%JAVA_HOME%\bin\java.exe" %CONTROL_JVM_OPTS% %QUIET% 
%RESTART_SUCCESS_OPT% %JMX_MON% ^
     -DIGNITE_UPDATE_NOTIFIER=false -DIGNITE_HOME="%IGNITE_HOME%" 
-DIGNITE_PROG_NAME="%PROG_NAME%" %JVM_XOPTS% ^
     -cp "%CP%" %MAIN_CLASS% %*
 )
diff --git a/bin/control.sh b/bin/control.sh
index d0e4292..e3714de 100755
--- a/bin/control.sh
+++ b/bin/control.sh
@@ -90,34 +90,34 @@ fi
 #
 # ADD YOUR/CHANGE ADDITIONAL OPTIONS HERE
 #
-if [ -z "${JVM_OPTS:-}" ] ; then
+if [ -z "${CONTROL_JVM_OPTS:-}" ] ; then
     if [[ `"$JAVA" -version 2>&1 | egrep "1\.[7]\."` ]]; then
-        JVM_OPTS="-Xms256m -Xmx1g"
+        CONTROL_JVM_OPTS="-Xms256m -Xmx1g"
     else
-        JVM_OPTS="-Xms256m -Xmx1g"
+        CONTROL_JVM_OPTS="-Xms256m -Xmx1g"
     fi
 fi
 
 #
 # Uncomment to enable experimental commands [--wal]
 #
-# JVM_OPTS="${JVM_OPTS} -DIGNITE_ENABLE_EXPERIMENTAL_COMMAND=true"
+# CONTROL_JVM_OPTS="${CONTROL_JVM_OPTS} 
-DIGNITE_ENABLE_EXPERIMENTAL_COMMAND=true"
 
 #
 # Uncomment the following GC settings if you see spikes in your throughput due 
to Garbage Collection.
 #
-# JVM_OPTS="$JVM_OPTS -XX:+UseG1GC"
+# CONTROL_JVM_OPTS="$CONTROL_JVM_OPTS -XX:+UseG1GC"
 
 #
 # Uncomment if you get StackOverflowError.
 # On 64 bit systems this value can be larger, e.g. -Xss16m
 #
-# JVM_OPTS="${JVM_OPTS} -Xss4m"
+# CONTROL_JVM_OPTS="${CONTROL_JVM_OPTS} -Xss4m"
 
 #
 # Uncomment to set preference for IPv4 stack.
 #
-# JVM_OPTS="${JVM_OPTS} -Djava.net.preferIPv4Stack=true"
+# CONTROL_JVM_OPTS="${CONTROL_JVM_OPTS} -Djava.net.preferIPv4Stack=true"
 
 #
 # Assertions are disabled by default since version 3.5.
@@ -129,7 +129,7 @@ ENABLE_ASSERTIONS="1"
 # Set '-ea' options if assertions are enabled.
 #
 if [ "${ENABLE_ASSERTIONS:-}" = "1" ]; then
-    JVM_OPTS="${JVM_OPTS} -ea"
+    CONTROL_JVM_OPTS="${CONTROL_JVM_OPTS} -ea"
 fi
 
 #
@@ -143,18 +143,18 @@ fi
 # Remote debugging (JPDA).
 # Uncomment and change if remote debugging is required.
 #
-# JVM_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8787 
${JVM_OPTS}"
+# 
CONTROL_JVM_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8787
 ${CONTROL_JVM_OPTS}"
 
 #
-# Final JVM_OPTS for Java 9+ compatibility
+# Final CONTROL_JVM_OPTS for Java 9+ compatibility
 #
 if [ $version -eq 8 ] ; then
-    JVM_OPTS="\
+    CONTROL_JVM_OPTS="\
         -XX:+AggressiveOpts \
-         ${JVM_OPTS}"
+         ${CONTROL_JVM_OPTS}"
 
 elif [ $version -gt 8 ] && [ $version -lt 11 ]; then
-    JVM_OPTS="\
+    CONTROL_JVM_OPTS="\
         -XX:+AggressiveOpts \
         --add-exports=java.base/jdk.internal.misc=ALL-UNNAMED \
         --add-exports=java.base/sun.nio.ch=ALL-UNNAMED \
@@ -163,10 +163,10 @@ elif [ $version -gt 8 ] && [ $version -lt 11 ]; then
         
--add-exports=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED \
         --illegal-access=permit \
         --add-modules=java.xml.bind \
-        ${JVM_OPTS}"
+        ${CONTROL_JVM_OPTS}"
 
 elif [ $version -ge 11 ] ; then
-    JVM_OPTS="\
+    CONTROL_JVM_OPTS="\
         --add-exports=java.base/jdk.internal.misc=ALL-UNNAMED \
         --add-exports=java.base/sun.nio.ch=ALL-UNNAMED \
         --add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED \
@@ -174,17 +174,22 @@ elif [ $version -ge 11 ] ; then
         
--add-exports=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED \
         --add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED \
         --illegal-access=permit \
-        ${JVM_OPTS}"
+        ${CONTROL_JVM_OPTS}"
+fi
+
+if [ -n "${JVM_OPTS}" ] ; then
+  echo "JVM_OPTS environment variable is set, but will not be used. To pass 
JVM options use CONTROL_JVM_OPTS"
+  echo "JVM_OPTS=${JVM_OPTS}"
 fi
 
 case $osname in
     Darwin*)
-        "$JAVA" ${JVM_OPTS} ${QUIET:-} "${DOCK_OPTS}" ${JMX_MON:-} \
+        "$JAVA" ${CONTROL_JVM_OPTS} ${QUIET:-} "${DOCK_OPTS}" ${JMX_MON:-} \
          -DIGNITE_UPDATE_NOTIFIER=false -DIGNITE_HOME="${IGNITE_HOME}" \
          -DIGNITE_PROG_NAME="$0" ${JVM_XOPTS:-} -cp "${CP}" ${MAIN_CLASS} $@
     ;;
     *)
-        "$JAVA" ${JVM_OPTS} ${QUIET:-} ${JMX_MON:-} \
+        "$JAVA" ${CONTROL_JVM_OPTS} ${QUIET:-} ${JMX_MON:-} \
          -DIGNITE_UPDATE_NOTIFIER=false -DIGNITE_HOME="${IGNITE_HOME}" \
          -DIGNITE_PROG_NAME="$0" ${JVM_XOPTS:-} -cp "${CP}" ${MAIN_CLASS} $@
     ;;
diff --git a/bin/ignite.bat b/bin/ignite.bat
index b06bb1c..9c0f0ca 100644
--- a/bin/ignite.bat
+++ b/bin/ignite.bat
@@ -163,8 +163,13 @@ if "%JMX_PORT%" == "" (
     echo %0, WARN: Failed to resolve JMX host. JMX will be disabled.
     set JMX_MON=
 ) else (
-    set JMX_MON=-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=%JMX_PORT% ^
-    -Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false
+    if "%JMX_PORT%" == "IGNITE_JMX_PORT_IS_BUSY" (
+        echo %0, WARN: Provided IGNITE_JMX_PORT is busy. JMX will be disabled.
+        set JMX_MON=
+    ) else (
+        set JMX_MON=-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=%JMX_PORT% ^
+        -Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false
+    )
 )
 
 ::

Reply via email to