This is an automated email from the ASF dual-hosted git repository.
critas pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 1d3a35e76e0 Explicitly specify the JVM character encoding as UTF-8 in
the shell script (#15961)
1d3a35e76e0 is described below
commit 1d3a35e76e06ad9e4f49c6d06ee6df7033b7ffba
Author: Summer <[email protected]>
AuthorDate: Wed Jul 23 11:13:44 2025 +0800
Explicitly specify the JVM character encoding as UTF-8 in the shell script
(#15961)
---
scripts/conf/confignode-env.sh | 5 +++--
scripts/conf/datanode-env.sh | 1 +
scripts/conf/windows/confignode-env.bat | 4 ++--
scripts/sbin/start-cli.sh | 3 ++-
scripts/sbin/start-confignode.sh | 8 ++++----
scripts/sbin/start-datanode.sh | 10 +++++-----
scripts/sbin/windows/start-cli-table.bat | 2 +-
scripts/sbin/windows/start-cli.bat | 2 +-
scripts/tools/export-data.sh | 4 +++-
scripts/tools/export-tsfile.sh | 4 +++-
scripts/tools/import-data.sh | 4 +++-
scripts/tools/ops/backup.sh | 4 ++--
scripts/tools/ops/health_check.sh | 1 +
scripts/tools/schema/export-schema.sh | 4 +++-
scripts/tools/schema/import-schema.sh | 4 +++-
scripts/tools/schema/print-pb-tree-file.sh | 4 +++-
scripts/tools/schema/print-schema-log.sh | 4 +++-
.../tools/tsfile/check-overlap-sequence-files-and-repair.sh | 4 +++-
scripts/tools/tsfile/overlap-statistic-tool.sh | 4 +++-
scripts/tools/tsfile/print-iotdb-data-dir.sh | 4 +++-
scripts/tools/tsfile/print-tsfile-resource-files.sh | 4 +++-
scripts/tools/tsfile/print-tsfile.sh | 4 +++-
scripts/tools/tsfile/settle-tsfile.sh | 4 +++-
scripts/tools/tsfile/split-tsfile-tool.sh | 4 +++-
scripts/tools/tsfile/validate-tsfile.sh | 4 +++-
scripts/tools/wal/print-wal.sh | 4 +++-
scripts/tools/windows/export-data.bat | 2 +-
scripts/tools/windows/export-tsfile.bat | 2 +-
scripts/tools/windows/import-data.bat | 2 +-
scripts/tools/windows/ops/backup.bat | 2 +-
scripts/tools/windows/schema/export-schema.bat | 2 +-
scripts/tools/windows/schema/import-schema.bat | 2 +-
scripts/tools/windows/schema/print-pb-tree-file.bat | 4 ++--
scripts/tools/windows/schema/print-schema-log.bat | 4 ++--
.../windows/tsfile/check-overlap-sequence-files-and-repair.bat | 4 ++--
scripts/tools/windows/tsfile/overlap-statistic-tool.bat | 4 ++--
scripts/tools/windows/tsfile/print-iotdb-data-dir.bat | 4 ++--
scripts/tools/windows/tsfile/print-tsfile-resource-files.bat | 4 ++--
scripts/tools/windows/tsfile/print-tsfile.bat | 2 +-
scripts/tools/windows/tsfile/settle-tsfile.bat | 4 ++--
scripts/tools/windows/tsfile/split-tsfile-tool.bat | 4 ++--
scripts/tools/windows/tsfile/validate-tsfile.bat | 4 ++--
scripts/tools/windows/wal/print-wal.bat | 2 +-
43 files changed, 96 insertions(+), 60 deletions(-)
diff --git a/scripts/conf/confignode-env.sh b/scripts/conf/confignode-env.sh
index e251f3939c2..edf587b8c2b 100644
--- a/scripts/conf/confignode-env.sh
+++ b/scripts/conf/confignode-env.sh
@@ -319,9 +319,10 @@ if [[ ! "$CONFIGNODE_JMX_OPTS" =~ -Xms ]]; then
CONFIGNODE_JMX_OPTS="$CONFIGNODE
if [[ ! "$CONFIGNODE_JMX_OPTS" =~ -Xmx ]]; then
CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS -Xmx${ON_HEAP_MEMORY}"; fi
if [[ ! "$CONFIGNODE_JMX_OPTS" =~ -XX:MaxDirectMemorySize ]]; then
CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS
-XX:MaxDirectMemorySize=${OFF_HEAP_MEMORY}"; fi
CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS
-Djdk.nio.maxCachedBufferSize=${MAX_CACHED_BUFFER_SIZE}"
-IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -XX:+CrashOnOutOfMemoryError"
+CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS -XX:+CrashOnOutOfMemoryError"
+CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS -Dsun.jnu.encoding=UTF-8
-Dfile.encoding=UTF-8"
# if you want to dump the heap memory while OOM happening, you can use the
following command, remember to replace
${heap_dump_dir}/confignode_heapdump.hprof with your own file path and the
folder where this file is located needs to be created in advance
-#IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=${heap_dump_dir}/confignode_heapdump.hprof"
+#CONFIGNODE_JMX_OPTS="$CONFIGNODE_JMX_OPTS -XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=${heap_dump_dir}/confignode_heapdump.hprof"
echo "ConfigNode on heap memory size = ${ON_HEAP_MEMORY}B, off heap memory
size = ${OFF_HEAP_MEMORY}B"
echo "If you want to change this configuration, please check
conf/confignode-env.sh."
diff --git a/scripts/conf/datanode-env.sh b/scripts/conf/datanode-env.sh
index f19711435e0..31206e550d3 100755
--- a/scripts/conf/datanode-env.sh
+++ b/scripts/conf/datanode-env.sh
@@ -337,6 +337,7 @@ IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -Xss512k"
# these two options print safepoints with pauses longer than 1000ms to the
standard output. You can see these logs via redirection when starting in the
background like "start-datanode.sh > log_datanode_safepoint.log"
IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -XX:SafepointTimeoutDelay=1000"
IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -XX:+SafepointTimeout"
+IOTDB_JMX_OPTS="$IOTDB_JMX_OPTS -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
# option below tries to optimize safepoint stw time for large counted loop.
# NOTE: it may have an impact on JIT's black-box optimization.
diff --git a/scripts/conf/windows/confignode-env.bat
b/scripts/conf/windows/confignode-env.bat
index 01210b8ef6a..51b0f8de9cc 100644
--- a/scripts/conf/windows/confignode-env.bat
+++ b/scripts/conf/windows/confignode-env.bat
@@ -121,10 +121,10 @@ set /a
MAX_CACHED_BUFFER_SIZE=%off_heap_memory_size_in_mb%/%IO_THREADS_NUMBER%*1
set CONFIGNODE_HEAP_OPTS=-Xmx%ON_HEAP_MEMORY% -Xms%ON_HEAP_MEMORY%
set CONFIGNODE_HEAP_OPTS=%CONFIGNODE_HEAP_OPTS%
-XX:MaxDirectMemorySize=%OFF_HEAP_MEMORY%
set CONFIGNODE_HEAP_OPTS=%CONFIGNODE_HEAP_OPTS%
-Djdk.nio.maxCachedBufferSize=%MAX_CACHED_BUFFER_SIZE%
-set IOTDB_HEAP_OPTS=%IOTDB_HEAP_OPTS% -XX:+CrashOnOutOfMemoryError
+set CONFIGNODE_HEAP_OPTS=%CONFIGNODE_HEAP_OPTS% -XX:+CrashOnOutOfMemoryError
@REM if you want to dump the heap memory while OOM happening, you can use the
following command, remember to replace /tmp/heapdump.hprof with your own file
path and the folder where this file is located needs to be created in advance
-@REM IOTDB_JMX_OPTS=%IOTDB_HEAP_OPTS% -XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=\tmp\confignode_heapdump.hprof
+@REM CONFIGNODE_HEAP_OPTS=%CONFIGNODE_HEAP_OPTS%
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=\tmp\confignode_heapdump.hprof
@REM You can put your env variable here
@REM set JAVA_HOME=%JAVA_HOME%
diff --git a/scripts/sbin/start-cli.sh b/scripts/sbin/start-cli.sh
index a5ee21a2799..b864669134f 100755
--- a/scripts/sbin/start-cli.sh
+++ b/scripts/sbin/start-cli.sh
@@ -154,9 +154,10 @@ else
illegal_access_params="$illegal_access_params
--add-opens=java.base/java.lang=ALL-UNNAMED"
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
set -o noglob
iotdb_cli_params="-Dlogback.configurationFile=${IOTDB_CLI_CONF}/logback-cli.xml"
-exec "$JAVA" $iotdb_cli_params $illegal_access_params -cp "$CLASSPATH"
"$MAIN_CLASS" $PARAMETERS
+exec "$JAVA" $JVM_OPTS $iotdb_cli_params $illegal_access_params -cp
"$CLASSPATH" "$MAIN_CLASS" $PARAMETERS
exit $?
diff --git a/scripts/sbin/start-confignode.sh b/scripts/sbin/start-confignode.sh
index 65e1b7bd897..953454dddcf 100644
--- a/scripts/sbin/start-confignode.sh
+++ b/scripts/sbin/start-confignode.sh
@@ -149,19 +149,19 @@ launch_service() {
if [ "x$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" != "x" ]; then
[ -n "$pidfile" ] && printf "%d" $! > "$pidfile"
# shellcheck disable=SC2154
- exec $NUMACTL "$JAVA" $JVM_OPTS
"$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" $illegal_access_params $iotdb_parms
$CONFIGNODE_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" $PARAMS
+ exec $NUMACTL "$JAVA" "$JVM_ON_OUT_OF_MEMORY_ERROR_OPT"
$illegal_access_params $iotdb_parms $CONFIGNODE_JMX_OPTS $IOTDB_JVM_OPTS -cp
"$CLASSPATH" "$class" $PARAMS
else
[ -n "$pidfile" ] && printf "%d" $! > "$pidfile"
- exec $NUMACTL "$JAVA" $JVM_OPTS $illegal_access_params
$iotdb_parms $CONFIGNODE_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class"
$PARAMS
+ exec $NUMACTL "$JAVA" $illegal_access_params $iotdb_parms
$CONFIGNODE_JMX_OPTS $IOTDB_JVM_OPTS -cp "$CLASSPATH" "$class" $PARAMS
fi
# Startup IoTDB, background it, and write the pid.
else
if [ "x$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" != "x" ]; then
- exec $NUMACTL "$JAVA" $JVM_OPTS
"$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" $illegal_access_params $iotdb_parms
$CONFIGNODE_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" $PARAMS 2>&1 >
/dev/null <&- &
+ exec $NUMACTL "$JAVA" "$JVM_ON_OUT_OF_MEMORY_ERROR_OPT"
$illegal_access_params $iotdb_parms $CONFIGNODE_JMX_OPTS $IOTDB_JVM_OPTS -cp
"$CLASSPATH" "$class" $PARAMS 2>&1 > /dev/null <&- &
[ -n "$pidfile" ] && printf "%d" $! > "$pidfile"
true
else
- exec $NUMACTL "$JAVA" $JVM_OPTS $illegal_access_params
$iotdb_parms $CONFIGNODE_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class"
$PARAMS 2>&1 > /dev/null <&- &
+ exec $NUMACTL "$JAVA" $illegal_access_params $iotdb_parms
$CONFIGNODE_JMX_OPTS $IOTDB_JVM_OPTS -cp "$CLASSPATH" "$class" $PARAMS 2>&1 >
/dev/null <&- &
[ -n "$pidfile" ] && printf "%d" $! > "$pidfile"
true
fi
diff --git a/scripts/sbin/start-datanode.sh b/scripts/sbin/start-datanode.sh
index 65ff2ac32e0..6927bebf1a0 100755
--- a/scripts/sbin/start-datanode.sh
+++ b/scripts/sbin/start-datanode.sh
@@ -130,7 +130,7 @@ if [ "x$SHOW_VERSION" != "x" ]; then
else
JAVA=java
fi
- exec "$JAVA" -cp "$CLASSPATH" $IOTDB_JVM_OPTS
"-Dlogback.configurationFile=${IOTDB_LOG_CONFIG}" "$classname"
+ exec "$JAVA" $IOTDB_JMX_OPTS $IOTDB_JVM_OPTS
"-Dlogback.configurationFile=${IOTDB_LOG_CONFIG}" -cp "$CLASSPATH" "$classname"
exit 0
fi
@@ -174,19 +174,19 @@ launch_service()
iotdb_parms="$iotdb_parms -Diotdb-foreground=yes"
if [ "x$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" != "x" ]; then
[ ! -z "$pidfile" ] && printf "%d" $! > "$pidfile"
- exec $NUMACTL "$JAVA" $JVM_OPTS "$JVM_ON_OUT_OF_MEMORY_ERROR_OPT"
$illegal_access_params $iotdb_parms $IOTDB_JMX_OPTS -cp "$CLASSPATH"
$IOTDB_JVM_OPTS "$class" $PARAMS
+ exec $NUMACTL "$JAVA" "$JVM_ON_OUT_OF_MEMORY_ERROR_OPT"
$illegal_access_params $iotdb_parms $IOTDB_JMX_OPTS $IOTDB_JVM_OPTS -cp
"$CLASSPATH" "$class" $PARAMS
else
[ ! -z "$pidfile" ] && printf "%d" $! > "$pidfile"
- exec $NUMACTL "$JAVA" $JVM_OPTS $illegal_access_params
$iotdb_parms $IOTDB_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" $PARAMS
+ exec $NUMACTL "$JAVA" $illegal_access_params $iotdb_parms
$IOTDB_JMX_OPTS $IOTDB_JVM_OPTS -cp "$CLASSPATH" "$class" $PARAMS
fi
# Startup IoTDB, background it, and write the pid.
else
if [ "x$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" != "x" ]; then
- exec $NUMACTL "$JAVA" $JVM_OPTS
"$JVM_ON_OUT_OF_MEMORY_ERROR_OPT" $illegal_access_params $iotdb_parms
$IOTDB_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" $PARAMS 2>&1 >
/dev/null <&- &
+ exec $NUMACTL "$JAVA" "$JVM_ON_OUT_OF_MEMORY_ERROR_OPT"
$illegal_access_params $iotdb_parms $IOTDB_JMX_OPTS $IOTDB_JVM_OPTS -cp
"$CLASSPATH" "$class" $PARAMS 2>&1 > /dev/null <&- &
[ ! -z "$pidfile" ] && printf "%d" $! > "$pidfile"
true
else
- exec $NUMACTL "$JAVA" $JVM_OPTS $illegal_access_params
$iotdb_parms $IOTDB_JMX_OPTS -cp "$CLASSPATH" $IOTDB_JVM_OPTS "$class" $PARAMS
2>&1 > /dev/null <&- &
+ exec $NUMACTL "$JAVA" $illegal_access_params $iotdb_parms
$IOTDB_JMX_OPTS $IOTDB_JVM_OPTS -cp "$CLASSPATH" "$class" $PARAMS 2>&1 >
/dev/null <&- &
[ ! -z "$pidfile" ] && printf "%d" $! > "$pidfile"
true
fi
diff --git a/scripts/sbin/windows/start-cli-table.bat
b/scripts/sbin/windows/start-cli-table.bat
index d22a45ef7c6..67b3c318cc9 100644
--- a/scripts/sbin/windows/start-cli-table.bat
+++ b/scripts/sbin/windows/start-cli-table.bat
@@ -106,7 +106,7 @@ IF "%JAVA_VERSION%" == "8" (
) ELSE (
set ILLEGAL_ACCESS_PARAMS=--add-opens=java.base/java.lang=ALL-UNNAMED
)
-
+set JAVA_OPTS=%JAVA_OPTS% -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
java %ILLEGAL_ACCESS_PARAMS% %JAVA_OPTS% -cp %CLASSPATH% %MAIN_CLASS%
%PARAMETERS%
set ret_code=%ERRORLEVEL%
goto finally
diff --git a/scripts/sbin/windows/start-cli.bat
b/scripts/sbin/windows/start-cli.bat
index 236775f5716..f79bfb8b962 100644
--- a/scripts/sbin/windows/start-cli.bat
+++ b/scripts/sbin/windows/start-cli.bat
@@ -106,7 +106,7 @@ IF "%JAVA_VERSION%" == "8" (
) ELSE (
set ILLEGAL_ACCESS_PARAMS=--add-opens=java.base/java.lang=ALL-UNNAMED
)
-
+set JAVA_OPTS=%JAVA_OPTS% -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
java %ILLEGAL_ACCESS_PARAMS% %JAVA_OPTS% -cp %CLASSPATH% %MAIN_CLASS%
%PARAMETERS%
set ret_code=%ERRORLEVEL%
goto finally
diff --git a/scripts/tools/export-data.sh b/scripts/tools/export-data.sh
index 4d69035e9ca..d98d1363aa4 100644
--- a/scripts/tools/export-data.sh
+++ b/scripts/tools/export-data.sh
@@ -49,11 +49,13 @@ if [ -z $JAVA ] ; then
exit 1;
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
done
MAIN_CLASS=org.apache.iotdb.tool.data.ExportData
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS"
"$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/export-tsfile.sh b/scripts/tools/export-tsfile.sh
index ccc9df3e3a4..069be4ec81f 100644
--- a/scripts/tools/export-tsfile.sh
+++ b/scripts/tools/export-tsfile.sh
@@ -49,11 +49,13 @@ if [ -z $JAVA ] ; then
exit 1;
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
done
MAIN_CLASS=org.apache.iotdb.tool.tsfile.ExportTsFile
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS"
"$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/import-data.sh b/scripts/tools/import-data.sh
index 14789a44a10..48485388d6a 100644
--- a/scripts/tools/import-data.sh
+++ b/scripts/tools/import-data.sh
@@ -49,11 +49,13 @@ if [ -z $JAVA ] ; then
exit 1;
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
done
MAIN_CLASS=org.apache.iotdb.tool.data.ImportData
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS"
"$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/ops/backup.sh b/scripts/tools/ops/backup.sh
index 8bd3643d353..47c8e3e6552 100644
--- a/scripts/tools/ops/backup.sh
+++ b/scripts/tools/ops/backup.sh
@@ -133,7 +133,7 @@ logs_dir="${IOTDB_HOME}/logs"
if [ ! -d "$logs_dir" ]; then
mkdir "$logs_dir"
fi
-
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
IOTDB_CLI_CONF=${IOTDB_HOME}/conf
iotdb_cli_params="-Dlogback.configurationFile=${IOTDB_CLI_CONF}/logback-backup.xml"
-exec nohup "$JAVA" -DIOTDB_HOME=${IOTDB_HOME} $iotdb_cli_params -cp
"$CLASSPATH" "$MAIN_CLASS" "$@" >/dev/null 2>&1 <&- &
+exec nohup "$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} $iotdb_cli_params -cp
"$CLASSPATH" "$MAIN_CLASS" "$@" >/dev/null 2>&1 <&- &
diff --git a/scripts/tools/ops/health_check.sh
b/scripts/tools/ops/health_check.sh
index 346d1b9972b..3997ee848b6 100644
--- a/scripts/tools/ops/health_check.sh
+++ b/scripts/tools/ops/health_check.sh
@@ -372,6 +372,7 @@ system_settings_check() {
fi
}
+
if [ -n "$operate" ]; then
if [ "$operate" == "local" ]; then
system_settings_pre_check
diff --git a/scripts/tools/schema/export-schema.sh
b/scripts/tools/schema/export-schema.sh
index 8ad2271b795..d79f94902e7 100644
--- a/scripts/tools/schema/export-schema.sh
+++ b/scripts/tools/schema/export-schema.sh
@@ -49,9 +49,11 @@ if [ -z $JAVA ] ; then
exit 1;
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=${IOTDB_HOME}/lib/*
MAIN_CLASS=org.apache.iotdb.tool.schema.ExportSchema
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS"
"$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/schema/import-schema.sh
b/scripts/tools/schema/import-schema.sh
index a065d33e011..8d17248f1ef 100644
--- a/scripts/tools/schema/import-schema.sh
+++ b/scripts/tools/schema/import-schema.sh
@@ -49,9 +49,11 @@ if [ -z $JAVA ] ; then
exit 1;
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=${IOTDB_HOME}/lib/*
MAIN_CLASS=org.apache.iotdb.tool.schema.ImportSchema
-"$JAVA" -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -DIOTDB_HOME=${IOTDB_HOME} -cp "$CLASSPATH" "$MAIN_CLASS"
"$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/schema/print-pb-tree-file.sh
b/scripts/tools/schema/print-pb-tree-file.sh
index e665f73b054..2d8c62d58b4 100644
--- a/scripts/tools/schema/print-pb-tree-file.sh
+++ b/scripts/tools/schema/print-pb-tree-file.sh
@@ -40,6 +40,8 @@ else
JAVA=java
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
MAIN_CLASS=org.apache.iotdb.db.tools.schema.PBTreeFileSketchTool
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/schema/print-schema-log.sh
b/scripts/tools/schema/print-schema-log.sh
index 17ec6626e62..1de39094ecb 100644
--- a/scripts/tools/schema/print-schema-log.sh
+++ b/scripts/tools/schema/print-schema-log.sh
@@ -40,6 +40,8 @@ else
JAVA=java
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
MAIN_CLASS=org.apache.iotdb.db.tools.schema.MLogParser
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/tsfile/check-overlap-sequence-files-and-repair.sh
b/scripts/tools/tsfile/check-overlap-sequence-files-and-repair.sh
index 398a593c3a0..586aaaa8039 100644
--- a/scripts/tools/tsfile/check-overlap-sequence-files-and-repair.sh
+++ b/scripts/tools/tsfile/check-overlap-sequence-files-and-repair.sh
@@ -40,6 +40,8 @@ else
JAVA=java
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
MAIN_CLASS=org.apache.iotdb.db.tools.validate.TsFileOverlapValidationAndRepairTool
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
exit $?
diff --git a/scripts/tools/tsfile/overlap-statistic-tool.sh
b/scripts/tools/tsfile/overlap-statistic-tool.sh
index 570e9d35d4e..e09f86fd7ae 100644
--- a/scripts/tools/tsfile/overlap-statistic-tool.sh
+++ b/scripts/tools/tsfile/overlap-statistic-tool.sh
@@ -40,6 +40,8 @@ else
JAVA=java
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
MAIN_CLASS=org.apache.iotdb.db.storageengine.dataregion.compaction.tool.OverlapStatisticTool
-"$JAVA" -Xmx16G -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -Xmx16G -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
exit $?
diff --git a/scripts/tools/tsfile/print-iotdb-data-dir.sh
b/scripts/tools/tsfile/print-iotdb-data-dir.sh
index 1891952ba7d..fb7e3d86562 100644
--- a/scripts/tools/tsfile/print-iotdb-data-dir.sh
+++ b/scripts/tools/tsfile/print-iotdb-data-dir.sh
@@ -41,6 +41,8 @@ else
JAVA=java
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -48,5 +50,5 @@ done
MAIN_CLASS=org.apache.iotdb.db.tools.IoTDBDataDirViewer
-"$JAVA" -cp "$CLASSPATH"
"-Dlogback.configurationFile=${IOTDB_HOME}/conf/logback-tool.xml" "$MAIN_CLASS"
"$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH"
"-Dlogback.configurationFile=${IOTDB_HOME}/conf/logback-tool.xml" "$MAIN_CLASS"
"$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/tsfile/print-tsfile-resource-files.sh
b/scripts/tools/tsfile/print-tsfile-resource-files.sh
index c247e80cf16..0e1d0623d49 100755
--- a/scripts/tools/tsfile/print-tsfile-resource-files.sh
+++ b/scripts/tools/tsfile/print-tsfile-resource-files.sh
@@ -47,6 +47,8 @@ if [ -z $JAVA ] ; then
exit 1;
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -55,6 +57,6 @@ done
MAIN_CLASS=org.apache.iotdb.db.tools.TsFileResourcePrinter
# Start up the service
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
exit $?
diff --git a/scripts/tools/tsfile/print-tsfile.sh
b/scripts/tools/tsfile/print-tsfile.sh
index e3ad4d5fe6c..da1ba8d0688 100644
--- a/scripts/tools/tsfile/print-tsfile.sh
+++ b/scripts/tools/tsfile/print-tsfile.sh
@@ -41,6 +41,8 @@ else
JAVA=java
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -48,5 +50,5 @@ done
MAIN_CLASS=org.apache.iotdb.db.tools.TsFileSketchTool
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/tsfile/settle-tsfile.sh
b/scripts/tools/tsfile/settle-tsfile.sh
index 30713604687..0e8ba8f885e 100644
--- a/scripts/tools/tsfile/settle-tsfile.sh
+++ b/scripts/tools/tsfile/settle-tsfile.sh
@@ -37,6 +37,8 @@ else
JAVA=java
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -44,5 +46,5 @@ done
MAIN_CLASS=org.apache.iotdb.db.tools.settle.TsFileSettleByCompactionTool
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
exit $?
diff --git a/scripts/tools/tsfile/split-tsfile-tool.sh
b/scripts/tools/tsfile/split-tsfile-tool.sh
index f645f3c0fd6..9719041bab1 100644
--- a/scripts/tools/tsfile/split-tsfile-tool.sh
+++ b/scripts/tools/tsfile/split-tsfile-tool.sh
@@ -40,6 +40,8 @@ else
JAVA=java
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
MAIN_CLASS=org.apache.iotdb.db.tools.TsFileSplitTool
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/tsfile/validate-tsfile.sh
b/scripts/tools/tsfile/validate-tsfile.sh
index aaa27cac72f..178cd9e1458 100644
--- a/scripts/tools/tsfile/validate-tsfile.sh
+++ b/scripts/tools/tsfile/validate-tsfile.sh
@@ -40,6 +40,8 @@ else
JAVA=java
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -47,5 +49,5 @@ done
MAIN_CLASS=org.apache.iotdb.db.tools.validate.TsFileValidationTool
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
exit $?
diff --git a/scripts/tools/wal/print-wal.sh b/scripts/tools/wal/print-wal.sh
index 1aa396d4fd5..fd519939297 100644
--- a/scripts/tools/wal/print-wal.sh
+++ b/scripts/tools/wal/print-wal.sh
@@ -41,6 +41,8 @@ else
JAVA=java
fi
+JVM_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+
CLASSPATH=""
for f in ${IOTDB_HOME}/lib/*.jar; do
CLASSPATH=${CLASSPATH}":"$f
@@ -48,5 +50,5 @@ done
MAIN_CLASS=org.apache.iotdb.db.storageengine.dataregion.wal.utils.WALPrintTool
-"$JAVA" -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
+"$JAVA" $JVM_OPTS -cp "$CLASSPATH" "$MAIN_CLASS" "$@"
exit $?
\ No newline at end of file
diff --git a/scripts/tools/windows/export-data.bat
b/scripts/tools/windows/export-data.bat
index 69d9639b278..f239b09bb48 100644
--- a/scripts/tools/windows/export-data.bat
+++ b/scripts/tools/windows/export-data.bat
@@ -37,7 +37,7 @@ if NOT DEFINED JAVA_HOME goto :err
@REM
-----------------------------------------------------------------------------
@REM JVM Opts we'll use in legacy run or installation
set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
@REM ***** CLASSPATH library setting *****
set CLASSPATH=%CLASSPATH%;"%IOTDB_HOME%\lib\*"
diff --git a/scripts/tools/windows/export-tsfile.bat
b/scripts/tools/windows/export-tsfile.bat
index e67114300e2..0b070b51fbc 100644
--- a/scripts/tools/windows/export-tsfile.bat
+++ b/scripts/tools/windows/export-tsfile.bat
@@ -37,7 +37,7 @@ if NOT DEFINED JAVA_HOME goto :err
@REM
-----------------------------------------------------------------------------
@REM JVM Opts we'll use in legacy run or installation
set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
@REM ***** CLASSPATH library setting *****
set CLASSPATH=%CLASSPATH%;"%IOTDB_HOME%\lib\*"
diff --git a/scripts/tools/windows/import-data.bat
b/scripts/tools/windows/import-data.bat
index 6875d453faa..56518c78600 100644
--- a/scripts/tools/windows/import-data.bat
+++ b/scripts/tools/windows/import-data.bat
@@ -37,7 +37,7 @@ if NOT DEFINED JAVA_HOME goto :err
@REM
-----------------------------------------------------------------------------
@REM JVM Opts we'll use in legacy run or installation
set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
@REM ***** CLASSPATH library setting *****
set CLASSPATH=%CLASSPATH%;"%IOTDB_HOME%\lib\*"
diff --git a/scripts/tools/windows/ops/backup.bat
b/scripts/tools/windows/ops/backup.bat
index 2a723a76fc8..f06c674895f 100644
--- a/scripts/tools/windows/ops/backup.bat
+++ b/scripts/tools/windows/ops/backup.bat
@@ -29,7 +29,7 @@ popd
if NOT DEFINED JAVA_HOME goto :err
set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
SET IOTDB_CONF=%IOTDB_HOME%\conf
IF EXIST "%IOTDB_CONF%\windows\datanode-env.bat" (
diff --git a/scripts/tools/windows/schema/export-schema.bat
b/scripts/tools/windows/schema/export-schema.bat
index 397d8ab9408..9a082ac05ff 100644
--- a/scripts/tools/windows/schema/export-schema.bat
+++ b/scripts/tools/windows/schema/export-schema.bat
@@ -37,7 +37,7 @@ if NOT DEFINED JAVA_HOME goto :err
@REM
-----------------------------------------------------------------------------
@REM JVM Opts we'll use in legacy run or installation
set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
@REM ***** CLASSPATH library setting *****
if EXIST "%IOTDB_HOME%\lib" (set CLASSPATH="%IOTDB_HOME%\lib\*") else set
CLASSPATH="%IOTDB_HOME%\..\lib\*"
diff --git a/scripts/tools/windows/schema/import-schema.bat
b/scripts/tools/windows/schema/import-schema.bat
index f01dd4e94c0..a4ddd93b6ff 100644
--- a/scripts/tools/windows/schema/import-schema.bat
+++ b/scripts/tools/windows/schema/import-schema.bat
@@ -37,7 +37,7 @@ if NOT DEFINED JAVA_HOME goto :err
@REM
-----------------------------------------------------------------------------
@REM JVM Opts we'll use in legacy run or installation
set JAVA_OPTS=-ea^
- -DIOTDB_HOME="%IOTDB_HOME%"
+ -DIOTDB_HOME="%IOTDB_HOME%" -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
@REM ***** CLASSPATH library setting *****
if EXIST "%IOTDB_HOME%\lib" (set CLASSPATH="%IOTDB_HOME%\lib\*") else set
CLASSPATH="%IOTDB_HOME%\..\lib\*"
diff --git a/scripts/tools/windows/schema/print-pb-tree-file.bat
b/scripts/tools/windows/schema/print-pb-tree-file.bat
index e4d8c42b7a9..302a9f3c8bb 100644
--- a/scripts/tools/windows/schema/print-pb-tree-file.bat
+++ b/scripts/tools/windows/schema/print-pb-tree-file.bat
@@ -45,8 +45,8 @@ goto :eof
@REM
-----------------------------------------------------------------------------
:okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
goto finally
diff --git a/scripts/tools/windows/schema/print-schema-log.bat
b/scripts/tools/windows/schema/print-schema-log.bat
index 52a83297cdc..8a39ec2d97c 100644
--- a/scripts/tools/windows/schema/print-schema-log.bat
+++ b/scripts/tools/windows/schema/print-schema-log.bat
@@ -45,8 +45,8 @@ goto :eof
@REM
-----------------------------------------------------------------------------
:okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
goto finally
diff --git
a/scripts/tools/windows/tsfile/check-overlap-sequence-files-and-repair.bat
b/scripts/tools/windows/tsfile/check-overlap-sequence-files-and-repair.bat
index eb7fe8f072e..a95667b63f4 100644
--- a/scripts/tools/windows/tsfile/check-overlap-sequence-files-and-repair.bat
+++ b/scripts/tools/windows/tsfile/check-overlap-sequence-files-and-repair.bat
@@ -45,8 +45,8 @@ goto :eof
@REM
-----------------------------------------------------------------------------
:okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
goto finally
diff --git a/scripts/tools/windows/tsfile/overlap-statistic-tool.bat
b/scripts/tools/windows/tsfile/overlap-statistic-tool.bat
index 3140c9f2184..4cdea11f370 100644
--- a/scripts/tools/windows/tsfile/overlap-statistic-tool.bat
+++ b/scripts/tools/windows/tsfile/overlap-statistic-tool.bat
@@ -45,8 +45,8 @@ goto :eof
@REM
-----------------------------------------------------------------------------
:okClasspath
-
-"%JAVA_HOME%\bin\java" -Xmx16G -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -Xmx16G -cp "%CLASSPATH%" %MAIN_CLASS% %*
goto finally
diff --git a/scripts/tools/windows/tsfile/print-iotdb-data-dir.bat
b/scripts/tools/windows/tsfile/print-iotdb-data-dir.bat
index 8042b384a38..4a145838203 100644
--- a/scripts/tools/windows/tsfile/print-iotdb-data-dir.bat
+++ b/scripts/tools/windows/tsfile/print-iotdb-data-dir.bat
@@ -45,8 +45,8 @@ goto :eof
@REM
-----------------------------------------------------------------------------
:okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%"
"-Dlogback.configurationFile=%IOTDB_HOME%\conf\logback-tool.xml" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%"
"-Dlogback.configurationFile=%IOTDB_HOME%\conf\logback-tool.xml" %MAIN_CLASS% %*
goto finally
diff --git a/scripts/tools/windows/tsfile/print-tsfile-resource-files.bat
b/scripts/tools/windows/tsfile/print-tsfile-resource-files.bat
index 1fcf1908e25..ca96af24ce9 100644
--- a/scripts/tools/windows/tsfile/print-tsfile-resource-files.bat
+++ b/scripts/tools/windows/tsfile/print-tsfile-resource-files.bat
@@ -44,8 +44,8 @@ goto :eof
@REM
-----------------------------------------------------------------------------
:okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
goto finally
diff --git a/scripts/tools/windows/tsfile/print-tsfile.bat
b/scripts/tools/windows/tsfile/print-tsfile.bat
index bd7f0c8cf83..3be2ac1a0ff 100644
--- a/scripts/tools/windows/tsfile/print-tsfile.bat
+++ b/scripts/tools/windows/tsfile/print-tsfile.bat
@@ -35,7 +35,7 @@ if NOT DEFINED JAVA_HOME goto :err
@REM
-----------------------------------------------------------------------------
@REM JVM Opts
set JAVA_OPTS=-ea^
- -Dfile.encoding=UTF-8
+ -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
@REM
-----------------------------------------------------------------------------
@REM ***** CLASSPATH library setting *****
diff --git a/scripts/tools/windows/tsfile/settle-tsfile.bat
b/scripts/tools/windows/tsfile/settle-tsfile.bat
index 8fb4a8b6568..e7259821ae5 100644
--- a/scripts/tools/windows/tsfile/settle-tsfile.bat
+++ b/scripts/tools/windows/tsfile/settle-tsfile.bat
@@ -45,8 +45,8 @@ goto :eof
@REM
-----------------------------------------------------------------------------
:okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
goto finally
diff --git a/scripts/tools/windows/tsfile/split-tsfile-tool.bat
b/scripts/tools/windows/tsfile/split-tsfile-tool.bat
index 97b86b217b4..2ec48ee4f71 100644
--- a/scripts/tools/windows/tsfile/split-tsfile-tool.bat
+++ b/scripts/tools/windows/tsfile/split-tsfile-tool.bat
@@ -45,8 +45,8 @@ goto :eof
@REM
-----------------------------------------------------------------------------
:okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
goto finally
diff --git a/scripts/tools/windows/tsfile/validate-tsfile.bat
b/scripts/tools/windows/tsfile/validate-tsfile.bat
index 3ecd85f88fe..fd6440f1f92 100644
--- a/scripts/tools/windows/tsfile/validate-tsfile.bat
+++ b/scripts/tools/windows/tsfile/validate-tsfile.bat
@@ -45,8 +45,8 @@ goto :eof
@REM
-----------------------------------------------------------------------------
:okClasspath
-
-"%JAVA_HOME%\bin\java" -cp "%CLASSPATH%" %MAIN_CLASS% %*
+set JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8"
+"%JAVA_HOME%\bin\java" %JAVA_OPTS% -cp "%CLASSPATH%" %MAIN_CLASS% %*
goto finally
diff --git a/scripts/tools/windows/wal/print-wal.bat
b/scripts/tools/windows/wal/print-wal.bat
index a13c42827da..fd24fb426cf 100644
--- a/scripts/tools/windows/wal/print-wal.bat
+++ b/scripts/tools/windows/wal/print-wal.bat
@@ -35,7 +35,7 @@ if NOT DEFINED JAVA_HOME goto :err
@REM
-----------------------------------------------------------------------------
@REM JVM Opts
set JAVA_OPTS=-ea^
- -Dfile.encoding=UTF-8
+ -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8
@REM
-----------------------------------------------------------------------------
@REM ***** CLASSPATH library setting *****