summaryrefslogtreecommitdiff
path: root/mysql-test/std_data
diff options
context:
space:
mode:
authorJulius Goryavsky <julius.goryavsky@mariadb.com>2022-10-28 11:16:25 +0200
committerJulius Goryavsky <julius.goryavsky@mariadb.com>2022-12-10 01:11:55 +0100
commita4914008332e5b7ecec8e060434ba97203940ac4 (patch)
tree72405bce9890a33adc08bd480b981f61bf7c3392 /mysql-test/std_data
parent0174a9ff3d412ada22205edc19066a14c52d6e99 (diff)
downloadmariadb-git-a4914008332e5b7ecec8e060434ba97203940ac4.tar.gz
MDEV-29814: galera_var_notify_ssl_ipv6 causes testing system to hang
This commit fixes the test system hanging due to the galera_var_notify_ssl_ipv6 test and also brings the wsrep_notify[_ssl].sh files in line with each other between the user template and the mtr suite. Quotes are also added here to avoid problems if the user specifies the value of one of the variables at the beginning of the file containing shell-specific characters, for example, if the password or username specified in the PSWD and USER variables will contain the "$" character. Also fixed an issue with automatic --ssl-verify-server-cert option substitution when the corresponding value is set by the user to "1" or "on". Also fixed some tests here to avoid joining one of the nodes to another cluster when the nodes are restarted from the mtr side, which can lead to random failures when testing with buildbot.
Diffstat (limited to 'mysql-test/std_data')
-rwxr-xr-xmysql-test/std_data/wsrep_notify.sh57
-rwxr-xr-xmysql-test/std_data/wsrep_notify_ssl.sh51
2 files changed, 57 insertions, 51 deletions
diff --git a/mysql-test/std_data/wsrep_notify.sh b/mysql-test/std_data/wsrep_notify.sh
index 80333b2eab8..828d5cf99da 100755
--- a/mysql-test/std_data/wsrep_notify.sh
+++ b/mysql-test/std_data/wsrep_notify.sh
@@ -6,30 +6,32 @@
#
# Edit parameters below to specify the address and login to server:
#
-USER=root
-PSWD=
+USER='root'
+PSWD=''
#
# If these parameters are not set, then the values
# passed by the server are taken:
#
-HOST=127.0.0.1
+HOST="127.0.0.1"
PORT=$NODE_MYPORT_1
#
# Edit parameters below to specify SSL parameters:
#
-ssl_key=
-ssl_cert=
-ssl_ca=
-ssl_capath=
-ssl_cipher=
-ssl_crl=
-ssl_crlpath=
+ssl_cert=""
+ssl_key=""
+ssl_ca=""
+ssl_capath=""
+ssl_cipher=""
+ssl_crl=""
+ssl_crlpath=""
ssl_verify_server_cert=0
#
# Client executable path:
#
CLIENT="$EXE_MYSQL"
-
+#
+# Name of schema and tables:
+#
SCHEMA="mtr_wsrep_notify"
MEMB_TABLE="$SCHEMA.membership"
STATUS_TABLE="$SCHEMA.status"
@@ -65,9 +67,9 @@ configuration_change()
do
echo "INSERT INTO $MEMB_TABLE VALUES ( $idx, "
# Don't forget to properly quote string values
- echo "'$NODE'" | sed s/\\//\',\'/g
+ echo "'$NODE'" | sed s/\\//\',\'/g
echo ");"
- idx=$(( $idx + 1 ))
+ idx=$(( $idx+1 ))
done
echo "INSERT INTO $STATUS_TABLE VALUES($idx, $INDEX, '$STATUS', '$CLUSTER_UUID', $PRIMARY);"
@@ -102,34 +104,35 @@ trim_string()
fi
}
-COM=status_update # not a configuration change by default
+COM='status_update' # not a configuration change by default
STATUS=""
CLUSTER_UUID=""
-PRIMARY="0"
+PRIMARY=0
INDEX=""
MEMBERS=""
while [ $# -gt 0 ]; do
case $1 in
- --status)
+ '--status')
STATUS=$(trim_string "$2")
shift
;;
- --uuid)
+ '--uuid')
CLUSTER_UUID=$(trim_string "$2")
shift
;;
- --primary)
- [ "$2" = "yes" ] && PRIMARY="1" || PRIMARY="0"
- COM=configuration_change
+ '--primary')
+ arg=$(trim_string "$2")
+ [ "$arg" = 'yes' ] && PRIMARY=1 || PRIMARY=0
+ COM='configuration_change'
shift
;;
- --index)
+ '--index')
INDEX=$(trim_string "$2")
shift
;;
- --members)
+ '--members')
MEMBERS=$(trim_string "$2")
shift
;;
@@ -168,9 +171,7 @@ ssl_verify_server_cert=$(trim_string "$ssl_verify_server_cert");
SSL_PARAM=""
-if [ -n "$ssl_key" -o -n "$ssl_cert" -o \
- -n "$ssl_ca" -o -n "$ssl_capath" -o \
- -n "$ssl_cipher" ]
+if [ -n "$ssl_key$ssl_cert$ssl_ca$ssl_capath$ssl_cipher$ssl_crl$ssl_crlpath" ]
then
SSL_PARAM=' --ssl'
[ -n "$ssl_key" ] && SSL_PARAM="$SSL_PARAM --ssl-key='$ssl_key'"
@@ -181,8 +182,10 @@ then
[ -n "$ssl_crl" ] && SSL_PARAM="$SSL_PARAM --ssl-crl='$ssl_crl'"
[ -n "$ssl_crlpath" ] && SSL_PARAM="$SSL_PARAM --ssl-crlpath='$ssl_crlpath'"
if [ -n "$ssl_verify_server_cert" ]; then
- if [ $ssl_verify_server_cert -ne 0 ]; then
- SSL_PARAM+=' --ssl-verify-server-cert'
+ if [ "$ssl_verify_server_cert" != "0" -o \
+ "$ssl_verify_server_cert" = "on" ]
+ then
+ SSL_PARAM="$SSL_PARAM --ssl-verify-server-cert"
fi
fi
fi
diff --git a/mysql-test/std_data/wsrep_notify_ssl.sh b/mysql-test/std_data/wsrep_notify_ssl.sh
index 6c96db1a4e5..ce5e3f8c695 100755
--- a/mysql-test/std_data/wsrep_notify_ssl.sh
+++ b/mysql-test/std_data/wsrep_notify_ssl.sh
@@ -6,13 +6,13 @@
#
# Edit parameters below to specify the address and login to server:
#
-USER=root
-PSWD=
+USER='root'
+PSWD=''
#
# If these parameters are not set, then the values
# passed by the server are taken:
#
-HOST=127.0.0.1
+HOST="127.0.0.1"
PORT=$NODE_MYPORT_1
#
# Edit parameters below to specify SSL parameters:
@@ -20,16 +20,18 @@ PORT=$NODE_MYPORT_1
ssl_cert="$MYSQL_TEST_DIR/std_data/client-cert.pem"
ssl_key="$MYSQL_TEST_DIR/std_data/client-key.pem"
ssl_ca="$MYSQL_TEST_DIR/std_data/cacert.pem"
-ssl_capath=
-ssl_cipher=
-ssl_crl=
-ssl_crlpath=
+ssl_capath=""
+ssl_cipher=""
+ssl_crl=""
+ssl_crlpath=""
ssl_verify_server_cert=0
#
# Client executable path:
#
CLIENT="$EXE_MYSQL"
-
+#
+# Name of schema and tables:
+#
SCHEMA="mtr_wsrep_notify"
MEMB_TABLE="$SCHEMA.membership"
STATUS_TABLE="$SCHEMA.status"
@@ -65,9 +67,9 @@ configuration_change()
do
echo "INSERT INTO $MEMB_TABLE VALUES ( $idx, "
# Don't forget to properly quote string values
- echo "'$NODE'" | sed s/\\//\',\'/g
+ echo "'$NODE'" | sed s/\\//\',\'/g
echo ");"
- idx=$(( $idx + 1 ))
+ idx=$(( $idx+1 ))
done
echo "INSERT INTO $STATUS_TABLE VALUES($idx, $INDEX, '$STATUS', '$CLUSTER_UUID', $PRIMARY);"
@@ -102,34 +104,35 @@ trim_string()
fi
}
-COM=status_update # not a configuration change by default
+COM='status_update' # not a configuration change by default
STATUS=""
CLUSTER_UUID=""
-PRIMARY="0"
+PRIMARY=0
INDEX=""
MEMBERS=""
while [ $# -gt 0 ]; do
case $1 in
- --status)
+ '--status')
STATUS=$(trim_string "$2")
shift
;;
- --uuid)
+ '--uuid')
CLUSTER_UUID=$(trim_string "$2")
shift
;;
- --primary)
- [ "$2" = "yes" ] && PRIMARY="1" || PRIMARY="0"
- COM=configuration_change
+ '--primary')
+ arg=$(trim_string "$2")
+ [ "$arg" = 'yes' ] && PRIMARY=1 || PRIMARY=0
+ COM='configuration_change'
shift
;;
- --index)
+ '--index')
INDEX=$(trim_string "$2")
shift
;;
- --members)
+ '--members')
MEMBERS=$(trim_string "$2")
shift
;;
@@ -168,9 +171,7 @@ ssl_verify_server_cert=$(trim_string "$ssl_verify_server_cert");
SSL_PARAM=""
-if [ -n "$ssl_key" -o -n "$ssl_cert" -o \
- -n "$ssl_ca" -o -n "$ssl_capath" -o \
- -n "$ssl_cipher" ]
+if [ -n "$ssl_key$ssl_cert$ssl_ca$ssl_capath$ssl_cipher$ssl_crl$ssl_crlpath" ]
then
SSL_PARAM=' --ssl'
[ -n "$ssl_key" ] && SSL_PARAM="$SSL_PARAM --ssl-key='$ssl_key'"
@@ -181,8 +182,10 @@ then
[ -n "$ssl_crl" ] && SSL_PARAM="$SSL_PARAM --ssl-crl='$ssl_crl'"
[ -n "$ssl_crlpath" ] && SSL_PARAM="$SSL_PARAM --ssl-crlpath='$ssl_crlpath'"
if [ -n "$ssl_verify_server_cert" ]; then
- if [ $ssl_verify_server_cert -ne 0 ]; then
- SSL_PARAM+=' --ssl-verify-server-cert'
+ if [ "$ssl_verify_server_cert" != "0" -o \
+ "$ssl_verify_server_cert" = "on" ]
+ then
+ SSL_PARAM="$SSL_PARAM --ssl-verify-server-cert"
fi
fi
fi