mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
10.4-MDEV-31470 wsrep_sst_method variable validity checking
This commit checks the validity of value change of wsrep_sst_method variable. The validity check is same as happens in donor node when incoming SST request is parsed. The commit has also a mtr test: wsrep.wsrep_variables_sst_method which verifies that wsrep_sst_method can be succesfully changed to acceptable values and that the SET command results in error if invalid value was entered. Signed-off-by: Julius Goryavsky <julius.goryavsky@mariadb.com>
This commit is contained in:
committed by
Julius Goryavsky
parent
aae78d7609
commit
c7feacb0de
61
mysql-test/suite/wsrep/r/wsrep_variables_sst_method.result
Normal file
61
mysql-test/suite/wsrep/r/wsrep_variables_sst_method.result
Normal file
@ -0,0 +1,61 @@
|
||||
SELECT @@wsrep_on;
|
||||
@@wsrep_on
|
||||
1
|
||||
SET @wsrep_sst_method_saved = @@global.wsrep_sst_method;
|
||||
/* test currently supported methods */
|
||||
SET GLOBAL wsrep_sst_method=DEFAULT;
|
||||
SELECT @@global.wsrep_sst_method;
|
||||
@@global.wsrep_sst_method
|
||||
rsync
|
||||
SET GLOBAL wsrep_sst_method='rsync';
|
||||
SELECT @@global.wsrep_sst_method;
|
||||
@@global.wsrep_sst_method
|
||||
rsync
|
||||
SET GLOBAL wsrep_sst_method='mysqldump';
|
||||
SELECT @@global.wsrep_sst_method;
|
||||
@@global.wsrep_sst_method
|
||||
mysqldump
|
||||
SET GLOBAL wsrep_sst_method='mariabackup';
|
||||
SELECT @@global.wsrep_sst_method;
|
||||
@@global.wsrep_sst_method
|
||||
mariabackup
|
||||
SET GLOBAL wsrep_sst_method='backup';
|
||||
SELECT @@global.wsrep_sst_method;
|
||||
@@global.wsrep_sst_method
|
||||
backup
|
||||
SET GLOBAL wsrep_sst_method='backup1.sh';
|
||||
SELECT @@global.wsrep_sst_method;
|
||||
@@global.wsrep_sst_method
|
||||
backup1.sh
|
||||
SET GLOBAL wsrep_sst_method='my method';
|
||||
ERROR 42000: Variable 'wsrep_sst_method' can't be set to the value of 'my method'
|
||||
SELECT @@global.wsrep_sst_method;
|
||||
@@global.wsrep_sst_method
|
||||
backup1.sh
|
||||
SHOW WARNINGS;
|
||||
Level Code Message
|
||||
Error 1231 Variable 'wsrep_sst_method' can't be set to the value of 'my method'
|
||||
SET GLOBAL wsrep_sst_method='/method';
|
||||
ERROR 42000: Variable 'wsrep_sst_method' can't be set to the value of '/method'
|
||||
SELECT @@global.wsrep_sst_method;
|
||||
@@global.wsrep_sst_method
|
||||
backup1.sh
|
||||
SHOW WARNINGS;
|
||||
Level Code Message
|
||||
Error 1231 Variable 'wsrep_sst_method' can't be set to the value of '/method'
|
||||
SET GLOBAL wsrep_sst_method='method!';
|
||||
ERROR 42000: Variable 'wsrep_sst_method' can't be set to the value of 'method!'
|
||||
SELECT @@global.wsrep_sst_method;
|
||||
@@global.wsrep_sst_method
|
||||
backup1.sh
|
||||
SHOW WARNINGS;
|
||||
Level Code Message
|
||||
Error 1231 Variable 'wsrep_sst_method' can't be set to the value of 'method!'
|
||||
SET GLOBAL wsrep_sst_method='method;';
|
||||
ERROR 42000: Variable 'wsrep_sst_method' can't be set to the value of 'method;'
|
||||
SELECT @@global.wsrep_sst_method;
|
||||
@@global.wsrep_sst_method
|
||||
backup1.sh
|
||||
SHOW WARNINGS;
|
||||
Level Code Message
|
||||
Error 1231 Variable 'wsrep_sst_method' can't be set to the value of 'method;'
|
Reference in New Issue
Block a user