From dc6a0171110741d633cef7877013d8e29d5e6def Mon Sep 17 00:00:00 2001 From: Daniel Black Date: Mon, 7 Nov 2022 15:58:40 +1100 Subject: MDEV-27882 Innodb - recognise MySQL-8.0 innodb flags and give a specific error message MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Per fsp0types.h, SDI is on tablespace flags position 14 where MariaDB stores its pagesize. Flag at position 13, also in MariaDB pagesize flags, is a MySQL encryption flag. These are checked only if fsp_flags_is_valid fails, so valid MariaDB pages sizes don't become errors. The error message "Cannot reset LSNs in table" was rather specific and not always true to replaced with more generic error. ALTER TABLE tbl IMPORT TABLESPACE now reports Unsupported on MySQL tablespace (rather than index corrupted) along with a server error message. MySQL innodb Errors are with with UNSUPPORTED rather than CORRUPTED to avoid user anxiety. Reviewer: Marko Mäkelä --- mysql-test/std_data/mysql80/ibdata1_16384 | Bin 0 -> 16384 bytes mysql-test/std_data/mysql80/ibdata1_32768 | Bin 0 -> 32768 bytes mysql-test/std_data/mysql80/ibdata1_4096 | Bin 0 -> 4096 bytes mysql-test/std_data/mysql80/ibdata1_65536 | Bin 0 -> 65536 bytes mysql-test/std_data/mysql80/ibdata1_8192 | Bin 0 -> 8192 bytes mysql-test/std_data/mysql80/t1.ibd | Bin 0 -> 16384 bytes 6 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 mysql-test/std_data/mysql80/ibdata1_16384 create mode 100644 mysql-test/std_data/mysql80/ibdata1_32768 create mode 100644 mysql-test/std_data/mysql80/ibdata1_4096 create mode 100644 mysql-test/std_data/mysql80/ibdata1_65536 create mode 100644 mysql-test/std_data/mysql80/ibdata1_8192 create mode 100644 mysql-test/std_data/mysql80/t1.ibd (limited to 'mysql-test/std_data') diff --git a/mysql-test/std_data/mysql80/ibdata1_16384 b/mysql-test/std_data/mysql80/ibdata1_16384 new file mode 100644 index 00000000000..7eeea4fdaf1 Binary files /dev/null and b/mysql-test/std_data/mysql80/ibdata1_16384 differ diff --git a/mysql-test/std_data/mysql80/ibdata1_32768 b/mysql-test/std_data/mysql80/ibdata1_32768 new file mode 100644 index 00000000000..ebcaef08d39 Binary files /dev/null and b/mysql-test/std_data/mysql80/ibdata1_32768 differ diff --git a/mysql-test/std_data/mysql80/ibdata1_4096 b/mysql-test/std_data/mysql80/ibdata1_4096 new file mode 100644 index 00000000000..67834106f48 Binary files /dev/null and b/mysql-test/std_data/mysql80/ibdata1_4096 differ diff --git a/mysql-test/std_data/mysql80/ibdata1_65536 b/mysql-test/std_data/mysql80/ibdata1_65536 new file mode 100644 index 00000000000..3d3d3043b4c Binary files /dev/null and b/mysql-test/std_data/mysql80/ibdata1_65536 differ diff --git a/mysql-test/std_data/mysql80/ibdata1_8192 b/mysql-test/std_data/mysql80/ibdata1_8192 new file mode 100644 index 00000000000..5082eff5ee2 Binary files /dev/null and b/mysql-test/std_data/mysql80/ibdata1_8192 differ diff --git a/mysql-test/std_data/mysql80/t1.ibd b/mysql-test/std_data/mysql80/t1.ibd new file mode 100644 index 00000000000..5cfd9b54496 Binary files /dev/null and b/mysql-test/std_data/mysql80/t1.ibd differ -- cgit v1.2.1 From ae53f684d3d02c1ef342891087fa0326b601c2fd Mon Sep 17 00:00:00 2001 From: Sergei Golubchik Date: Sun, 27 Nov 2022 14:09:01 +0100 Subject: MDEV-30016 Virtual columns do not support autoincrement columns change vcol_upgrade test to use stored gcols --- mysql-test/std_data/vcol_autoinc.MYI | Bin 1024 -> 1024 bytes mysql-test/std_data/vcol_autoinc.frm | Bin 951 -> 8587 bytes 2 files changed, 0 insertions(+), 0 deletions(-) (limited to 'mysql-test/std_data') diff --git a/mysql-test/std_data/vcol_autoinc.MYI b/mysql-test/std_data/vcol_autoinc.MYI index ddb3f2e0748..9b174844f9f 100644 Binary files a/mysql-test/std_data/vcol_autoinc.MYI and b/mysql-test/std_data/vcol_autoinc.MYI differ diff --git a/mysql-test/std_data/vcol_autoinc.frm b/mysql-test/std_data/vcol_autoinc.frm index bff7983735c..ee43f878856 100644 Binary files a/mysql-test/std_data/vcol_autoinc.frm and b/mysql-test/std_data/vcol_autoinc.frm differ -- cgit v1.2.1 From 8f30973234de520d95dfccca8409e5802b845331 Mon Sep 17 00:00:00 2001 From: Julius Goryavsky Date: Fri, 28 Oct 2022 11:16:25 +0200 Subject: 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. --- mysql-test/std_data/wsrep_notify.sh | 57 +++++++++++++++++---------------- mysql-test/std_data/wsrep_notify_ssl.sh | 51 +++++++++++++++-------------- 2 files changed, 57 insertions(+), 51 deletions(-) (limited to 'mysql-test/std_data') diff --git a/mysql-test/std_data/wsrep_notify.sh b/mysql-test/std_data/wsrep_notify.sh index 5dfd63462b9..6fd8acdaf9c 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 2c6b6f4dacb..aeedfe49e6a 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 -- cgit v1.2.1