From cb80ef93a9b0a7b4f80fde519629f3ad93fcea15 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan=20Lindstr=C3=B6m?= <jan.lindstrom@galeracluster.com>
Date: Wed, 31 Jul 2024 14:45:32 +0300
Subject: [PATCH] MDEV-32778 : galera_ssl_reload failed with warning message

Fixed used configuration and added suppression for warning
message. Test case changes only.

Signed-off-by: Julius Goryavsky <julius.goryavsky@mariadb.com>
---
 mysql-test/suite/galera_3nodes/disabled.def   |  1 -
 .../galera_3nodes/r/galera_ssl_reload.result  |  6 ++++++
 .../galera_3nodes/t/galera_ssl_reload.cnf     | 10 +++++++---
 .../galera_3nodes/t/galera_ssl_reload.test    | 20 +++++++++++++------
 4 files changed, 27 insertions(+), 10 deletions(-)

diff --git a/mysql-test/suite/galera_3nodes/disabled.def b/mysql-test/suite/galera_3nodes/disabled.def
index bcd0fb03478..cbadf6dd5c1 100644
--- a/mysql-test/suite/galera_3nodes/disabled.def
+++ b/mysql-test/suite/galera_3nodes/disabled.def
@@ -11,7 +11,6 @@
 ##############################################################################
 
 galera_2_cluster : MDEV-32631 galera_2_cluster: before_rollback(): Assertion `0' failed
-galera_ssl_reload : MDEV-32778 galera_ssl_reload failed with warning message
 galera_pc_bootstrap : temporarily disabled at the request of Codership
 galera_ipv6_mariabackup_section : temporarily disabled at the request of Codership
 GCF-354 : MDEV-25614 Galera test failure on GCF-354
diff --git a/mysql-test/suite/galera_3nodes/r/galera_ssl_reload.result b/mysql-test/suite/galera_3nodes/r/galera_ssl_reload.result
index 1daf3bedf4f..fffc4f3f5b5 100644
--- a/mysql-test/suite/galera_3nodes/r/galera_ssl_reload.result
+++ b/mysql-test/suite/galera_3nodes/r/galera_ssl_reload.result
@@ -14,3 +14,9 @@ connection node_3;
 # restart: with restart_parameters
 connection node_2;
 FLUSH SSL;
+connection node_3;
+call mtr.add_suppression("WSREP: Handshake failed: unexpected eof while reading");
+connection node_2;
+call mtr.add_suppression("WSREP: Handshake failed: unexpected eof while reading");
+connection node_1;
+call mtr.add_suppression("WSREP: Handshake failed: unexpected eof while reading");
diff --git a/mysql-test/suite/galera_3nodes/t/galera_ssl_reload.cnf b/mysql-test/suite/galera_3nodes/t/galera_ssl_reload.cnf
index 65d1599268d..d4c654e2bf8 100644
--- a/mysql-test/suite/galera_3nodes/t/galera_ssl_reload.cnf
+++ b/mysql-test/suite/galera_3nodes/t/galera_ssl_reload.cnf
@@ -1,10 +1,14 @@
 !include ../galera_3nodes.cnf
 
+[mysqld]
+wsrep-debug=1
+loose-galera-ssl-reload=1
+
 [mysqld.1]
-wsrep_provider_options='base_port=@mysqld.1.#galera_port;socket.ssl=yes;socket.ssl_ca=@ENV.MYSQL_TEST_DIR/std_data/galera_certs/galera.root.crt;socket.ssl_cert=@ENV.MYSQL_TEST_DIR/std_data/galera_certs/galera.1.crt;socket.ssl_key=@ENV.MYSQL_TEST_DIR/std_data/galera_certs/galera.1.key'
+wsrep_provider_options='base_port=@mysqld.1.#galera_port;socket.ssl=yes;socket.ssl_ca=@ENV.MYSQL_TEST_DIR/std_data/cacert.pem;socket.ssl_cert=@ENV.MYSQL_TEST_DIR/std_data/client-cert.pem;socket.ssl_key=@ENV.MYSQL_TEST_DIR/std_data/client-key.pem'
 
 [mysqld.2]
-wsrep_provider_options='base_port=@mysqld.2.#galera_port;socket.ssl=yes;socket.ssl_ca=@ENV.MYSQL_TEST_DIR/std_data/galera_certs/galera.root.crt;socket.ssl_cert=@ENV.MYSQL_TEST_DIR/std_data/galera_certs/galera.1.crt;socket.ssl_key=@ENV.MYSQL_TEST_DIR/std_data/galera_certs/galera.1.key'
+wsrep_provider_options='base_port=@mysqld.2.#galera_port;socket.ssl=yes;socket.ssl_ca=@ENV.MYSQL_TEST_DIR/std_data/cacert.pem;socket.ssl_cert=@ENV.MYSQL_TEST_DIR/std_data/client-cert.pem;socket.ssl_key=@ENV.MYSQL_TEST_DIR/std_data/client-key.pem'
 
 [mysqld.3]
-wsrep_provider_options='base_port=@mysqld.3.#galera_port;socket.ssl=yes;socket.ssl_ca=@ENV.MYSQL_TEST_DIR/std_data/galera_certs/galera.root.crt;socket.ssl_cert=@ENV.MYSQL_TEST_DIR/std_data/galera_certs/galera.1.crt;socket.ssl_key=@ENV.MYSQL_TEST_DIR/std_data/galera_certs/galera.1.key'
+wsrep_provider_options='base_port=@mysqld.3.#galera_port;socket.ssl=yes;socket.ssl_ca=@ENV.MYSQL_TEST_DIR/std_data/cacert.pem;socket.ssl_cert=@ENV.MYSQL_TEST_DIR/std_data/client-cert.pem;socket.ssl_key=@ENV.MYSQL_TEST_DIR/std_data/client-key.pem'
diff --git a/mysql-test/suite/galera_3nodes/t/galera_ssl_reload.test b/mysql-test/suite/galera_3nodes/t/galera_ssl_reload.test
index 714d4b3f75c..f7bed23294d 100644
--- a/mysql-test/suite/galera_3nodes/t/galera_ssl_reload.test
+++ b/mysql-test/suite/galera_3nodes/t/galera_ssl_reload.test
@@ -5,6 +5,7 @@
 --source include/galera_cluster.inc
 --source include/have_openssl.inc
 --source include/have_ssl_communication.inc
+--source include/force_restart.inc
 
 --let $galera_version=26.4.8
 source ../../wsrep/include/check_galera_version.inc;
@@ -31,22 +32,22 @@ let $ssl_cert = $MYSQLTEST_VARDIR/tmp/ssl_cert.pem;
 let $ssl_key = $MYSQLTEST_VARDIR/tmp/ssl_key.pem;
 let $ssl_ca = $MYSQLTEST_VARDIR/tmp/ssl_ca.pem;
 
-copy_file std_data/galera_certs/galera.root.crt $ssl_ca;
-copy_file std_data/galera_certs/galera.1.crt $ssl_cert;
-copy_file std_data/galera_certs/galera.1.key $ssl_key;
+copy_file std_data/cacert.pem $ssl_ca;
+copy_file std_data/client-cert.pem $ssl_cert;
+copy_file std_data/client-key.pem $ssl_key;
 
 --connection node_2
 --source include/shutdown_mysqld.inc
 --let $restart_noprint=1
---let $restart_parameters = --wsrep_cluster_address=gcomm://127.0.0.1:$NODE_GALERAPORT_1 --wsrep_provider_options=base_port=$NODE_GALERAPORT_2;socket.ssl=yes;socket.ssl_ca=$MYSQL_TEST_DIR/std_data/galera_certs/galera.root.crt;socket.ssl_cert=$MYSQLTEST_VARDIR/tmp/ssl_cert.pem;socket.ssl_key=$MYSQLTEST_VARDIR/tmp/ssl_key.pem
+--let $restart_parameters = --wsrep_cluster_address=gcomm://127.0.0.1:$NODE_GALERAPORT_1 --wsrep_provider_options=base_port=$NODE_GALERAPORT_2;socket.ssl=yes;socket.ssl_ca=$MYSQL_TEST_DIR/std_data/cacert.pem;socket.ssl_cert=$MYSQLTEST_VARDIR/tmp/ssl_cert.pem;socket.ssl_key=$MYSQLTEST_VARDIR/tmp/ssl_key.pem
 --source include/start_mysqld.inc
 --source include/galera_wait_ready.inc
 
 # Set certificate and key and reload by setting directly `wsrep_provider_options`
 remove_file $ssl_cert;
 remove_file $ssl_key;
-copy_file std_data/galera_certs/galera.2.crt $ssl_cert;
-copy_file std_data/galera_certs/galera.2.key $ssl_key;
+copy_file std_data/client-cert.pem $ssl_cert;
+copy_file std_data/client-key.pem $ssl_key;
 SET GLOBAL wsrep_provider_options = 'socket.ssl_reload=1';
 
 --connection node_3
@@ -67,5 +68,12 @@ remove_file $ssl_ca;
 remove_file $ssl_cert;
 remove_file $ssl_key;
 
+--connection node_3
+call mtr.add_suppression("WSREP: Handshake failed: unexpected eof while reading");
+--connection node_2
+call mtr.add_suppression("WSREP: Handshake failed: unexpected eof while reading");
+--connection node_1
+call mtr.add_suppression("WSREP: Handshake failed: unexpected eof while reading");
+
 # Restore original auto_increment_offset values.
 --source ../galera/include/auto_increment_offset_restore.inc
-- 
2.30.9