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
+ )
)
::