mirror of
https://github.com/MariaDB/server.git
synced 2025-01-30 10:31:54 +01:00
eb4123eefc
* Disallow setting wsrep_on = 1 if wsrep_provider is unset. Also, move wsrep_on_basic from sys_vars to wsrep suite: this test now requires to run with wsrep_provider set * Disallow setting @@session.wsrep_on = 1 when @@global.wsrep_on = 0 * Handle the case where a new connection turns @@global.wsrep_on from off to on. In this case we would miss a call to wsrep_open, causing unexpected states in wsrep::client_state (causing assertions). * Disable wsrep.MDEV-22443 because it is no longer possible to enable wsrep_on, if server is started with wsrep_provider='none' Reviewed-by: Jan Lindström <jan.lindstrom@mariadb.com>
50 lines
1.2 KiB
Text
50 lines
1.2 KiB
Text
#
|
|
# wsrep_on
|
|
#
|
|
# save the initial values
|
|
SET @wsrep_on_global_saved = @@global.wsrep_on;
|
|
SET @wsrep_on_session_saved = @@session.wsrep_on;
|
|
# default
|
|
SELECT @@global.wsrep_on;
|
|
@@global.wsrep_on
|
|
1
|
|
SELECT @@session.wsrep_on;
|
|
@@session.wsrep_on
|
|
1
|
|
|
|
# scope and valid values
|
|
SET @@global.wsrep_on=OFF;
|
|
SELECT @@global.wsrep_on;
|
|
@@global.wsrep_on
|
|
0
|
|
SET @@global.wsrep_on=ON;
|
|
SELECT @@global.wsrep_on;
|
|
@@global.wsrep_on
|
|
1
|
|
SET @@session.wsrep_on=OFF;
|
|
SELECT @@session.wsrep_on;
|
|
@@session.wsrep_on
|
|
0
|
|
SET @@session.wsrep_on=ON;
|
|
SELECT @@session.wsrep_on;
|
|
@@session.wsrep_on
|
|
1
|
|
SET @@session.wsrep_on=default;
|
|
SELECT @@session.wsrep_on;
|
|
@@session.wsrep_on
|
|
1
|
|
|
|
# invalid values
|
|
SET @@global.wsrep_on=NULL;
|
|
ERROR 42000: Variable 'wsrep_on' can't be set to the value of 'NULL'
|
|
SET @@global.wsrep_on='junk';
|
|
ERROR 42000: Variable 'wsrep_on' can't be set to the value of 'junk'
|
|
SET @@session.wsrep_on=NULL;
|
|
ERROR 42000: Variable 'wsrep_on' can't be set to the value of 'NULL'
|
|
SET @@session.wsrep_on='junk';
|
|
ERROR 42000: Variable 'wsrep_on' can't be set to the value of 'junk'
|
|
|
|
# restore the initial values
|
|
SET @@global.wsrep_on = @wsrep_on_global_saved;
|
|
SET @@session.wsrep_on = @wsrep_on_session_saved;
|
|
# End of test
|