!33 [Resolving] CVE-2021-27928
From: @bzhaoop Reviewed-by: @zhengzhenyu Signed-off-by: @zhengzhenyu
This commit is contained in:
commit
c72a5b8e8b
582
CVE-2021-27928.patch
Normal file
582
CVE-2021-27928.patch
Normal file
@ -0,0 +1,582 @@
|
||||
diff --git a/mysql-test/suite/galera/disabled.def b/mysql-test/suite/galera/disabled.def
|
||||
index c3b5e070158..6d9e198271c 100644
|
||||
--- a/mysql-test/suite/galera/disabled.def
|
||||
+++ b/mysql-test/suite/galera/disabled.def
|
||||
@@ -37,3 +37,4 @@ galera_ist_progress: MDEV-15236 galera_ist_progress fails when trying to read tr
|
||||
galera_concurrent_ctas : MDEV-15845 Test failure on galera.galera_concurrent_ctas
|
||||
pxc-421: Lock timeout exceeded
|
||||
galera_sst_mysqldump_with_key : MDEV-16890 Galera test failure
|
||||
+pxc-421: wsrep_provider is read-only for security reasons
|
||||
diff --git a/mysql-test/suite/galera/include/galera_load_provider.inc b/mysql-test/suite/galera/include/galera_load_provider.inc
|
||||
index aeab7e6ea19..e6ce6411193 100644
|
||||
--- a/mysql-test/suite/galera/include/galera_load_provider.inc
|
||||
+++ b/mysql-test/suite/galera/include/galera_load_provider.inc
|
||||
@@ -1,7 +1,6 @@
|
||||
--echo Loading wsrep provider ...
|
||||
|
||||
--disable_query_log
|
||||
---eval SET GLOBAL wsrep_provider = '$wsrep_provider_orig';
|
||||
--eval SET GLOBAL wsrep_cluster_address = '$wsrep_cluster_address_orig';
|
||||
--enable_query_log
|
||||
|
||||
diff --git a/mysql-test/suite/galera/include/galera_unload_provider.inc b/mysql-test/suite/galera/include/galera_unload_provider.inc
|
||||
index edc7eb31e0e..83438a947f0 100644
|
||||
--- a/mysql-test/suite/galera/include/galera_unload_provider.inc
|
||||
+++ b/mysql-test/suite/galera/include/galera_unload_provider.inc
|
||||
@@ -1,7 +1,6 @@
|
||||
--echo Unloading wsrep provider ...
|
||||
|
||||
--let $wsrep_cluster_address_orig = `SELECT @@wsrep_cluster_address`
|
||||
---let $wsrep_provider_orig = `SELECT @@wsrep_provider`
|
||||
--let $wsrep_provider_options_orig = `SELECT @@wsrep_provider_options`
|
||||
|
||||
-SET GLOBAL wsrep_provider = 'none';
|
||||
+SET GLOBAL wsrep_cluster_address = '';
|
||||
diff --git a/mysql-test/suite/galera/r/galera_ist_rsync.result b/mysql-test/suite/galera/r/galera_ist_rsync.result
|
||||
index 9c0d78d96e9..16d13ef261f 100644
|
||||
--- a/mysql-test/suite/galera/r/galera_ist_rsync.result
|
||||
+++ b/mysql-test/suite/galera/r/galera_ist_rsync.result
|
||||
@@ -21,7 +21,7 @@ INSERT INTO t1 VALUES ('node2_committed_before');
|
||||
INSERT INTO t1 VALUES ('node2_committed_before');
|
||||
COMMIT;
|
||||
Unloading wsrep provider ...
|
||||
-SET GLOBAL wsrep_provider = 'none';
|
||||
+SET GLOBAL wsrep_cluster_address = '';
|
||||
connection node_1;
|
||||
SET AUTOCOMMIT=OFF;
|
||||
START TRANSACTION;
|
||||
diff --git a/mysql-test/suite/galera/r/galera_sst_mysqldump.result b/mysql-test/suite/galera/r/galera_sst_mysqldump.result
|
||||
index 5c530c32ce6..6bdc933a9fc 100644
|
||||
--- a/mysql-test/suite/galera/r/galera_sst_mysqldump.result
|
||||
+++ b/mysql-test/suite/galera/r/galera_sst_mysqldump.result
|
||||
@@ -30,7 +30,7 @@ INSERT INTO t1 VALUES ('node2_committed_before');
|
||||
INSERT INTO t1 VALUES ('node2_committed_before');
|
||||
COMMIT;
|
||||
Unloading wsrep provider ...
|
||||
-SET GLOBAL wsrep_provider = 'none';
|
||||
+SET GLOBAL wsrep_cluster_address = '';
|
||||
connection node_1;
|
||||
SET AUTOCOMMIT=OFF;
|
||||
START TRANSACTION;
|
||||
diff --git a/mysql-test/suite/galera/r/mysql-wsrep#33.result b/mysql-test/suite/galera/r/mysql-wsrep#33.result
|
||||
index 6a5251204b9..4cc49c0cf07 100644
|
||||
--- a/mysql-test/suite/galera/r/mysql-wsrep#33.result
|
||||
+++ b/mysql-test/suite/galera/r/mysql-wsrep#33.result
|
||||
@@ -30,7 +30,7 @@ INSERT INTO t1 VALUES ('node2_committed_before');
|
||||
INSERT INTO t1 VALUES ('node2_committed_before');
|
||||
COMMIT;
|
||||
Unloading wsrep provider ...
|
||||
-SET GLOBAL wsrep_provider = 'none';
|
||||
+SET GLOBAL wsrep_cluster_address = '';
|
||||
connection node_1;
|
||||
SET AUTOCOMMIT=OFF;
|
||||
START TRANSACTION;
|
||||
diff --git a/mysql-test/suite/sys_vars/r/sysvars_wsrep.result b/mysql-test/suite/sys_vars/r/sysvars_wsrep.result
|
||||
index db932ae8223..921172920f1 100644
|
||||
--- a/mysql-test/suite/sys_vars/r/sysvars_wsrep.result
|
||||
+++ b/mysql-test/suite/sys_vars/r/sysvars_wsrep.result
|
||||
@@ -335,7 +335,7 @@ NUMERIC_MIN_VALUE NULL
|
||||
NUMERIC_MAX_VALUE NULL
|
||||
NUMERIC_BLOCK_SIZE NULL
|
||||
ENUM_VALUE_LIST NULL
|
||||
-READ_ONLY NO
|
||||
+READ_ONLY YES
|
||||
COMMAND_LINE_ARGUMENT REQUIRED
|
||||
VARIABLE_NAME WSREP_ON
|
||||
SESSION_VALUE OFF
|
||||
@@ -391,7 +391,7 @@ NUMERIC_MIN_VALUE NULL
|
||||
NUMERIC_MAX_VALUE NULL
|
||||
NUMERIC_BLOCK_SIZE NULL
|
||||
ENUM_VALUE_LIST NULL
|
||||
-READ_ONLY NO
|
||||
+READ_ONLY YES
|
||||
COMMAND_LINE_ARGUMENT REQUIRED
|
||||
VARIABLE_NAME WSREP_PROVIDER_OPTIONS
|
||||
SESSION_VALUE NULL
|
||||
diff --git a/mysql-test/suite/sys_vars/r/wsrep_notify_cmd_basic.result b/mysql-test/suite/sys_vars/r/wsrep_notify_cmd_basic.result
|
||||
deleted file mode 100644
|
||||
index 056ff8c817b..00000000000
|
||||
--- a/mysql-test/suite/sys_vars/r/wsrep_notify_cmd_basic.result
|
||||
+++ /dev/null
|
||||
@@ -1,47 +0,0 @@
|
||||
-#
|
||||
-# wsrep_notify_cmd
|
||||
-#
|
||||
-call mtr.add_suppression("WSREP: Failed to get provider options");
|
||||
-# save the initial value
|
||||
-SET @wsrep_notify_cmd_global_saved = @@global.wsrep_notify_cmd;
|
||||
-# default
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-@@global.wsrep_notify_cmd
|
||||
-
|
||||
-
|
||||
-# scope
|
||||
-SELECT @@session.wsrep_notify_cmd;
|
||||
-ERROR HY000: Variable 'wsrep_notify_cmd' is a GLOBAL variable
|
||||
-SET @@global.wsrep_notify_cmd='notify_cmd';
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-@@global.wsrep_notify_cmd
|
||||
-notify_cmd
|
||||
-
|
||||
-# valid values
|
||||
-SET @@global.wsrep_notify_cmd='command';
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-@@global.wsrep_notify_cmd
|
||||
-command
|
||||
-SET @@global.wsrep_notify_cmd='hyphenated-command';
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-@@global.wsrep_notify_cmd
|
||||
-hyphenated-command
|
||||
-SET @@global.wsrep_notify_cmd=default;
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-@@global.wsrep_notify_cmd
|
||||
-
|
||||
-SET @@global.wsrep_notify_cmd=NULL;
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-@@global.wsrep_notify_cmd
|
||||
-NULL
|
||||
-
|
||||
-# invalid values
|
||||
-SET @@global.wsrep_notify_cmd=1;
|
||||
-ERROR 42000: Incorrect argument type to variable 'wsrep_notify_cmd'
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-@@global.wsrep_notify_cmd
|
||||
-NULL
|
||||
-
|
||||
-# restore the initial value
|
||||
-SET @@global.wsrep_notify_cmd = @wsrep_notify_cmd_global_saved;
|
||||
-# End of test
|
||||
diff --git a/mysql-test/suite/sys_vars/r/wsrep_provider_basic.result b/mysql-test/suite/sys_vars/r/wsrep_provider_basic.result
|
||||
deleted file mode 100644
|
||||
index 3e4ac8ca883..00000000000
|
||||
--- a/mysql-test/suite/sys_vars/r/wsrep_provider_basic.result
|
||||
+++ /dev/null
|
||||
@@ -1,40 +0,0 @@
|
||||
-#
|
||||
-# wsrep_provider
|
||||
-#
|
||||
-# save the initial value
|
||||
-SET @wsrep_provider_global_saved = @@global.wsrep_provider;
|
||||
-# default
|
||||
-SELECT @@global.wsrep_provider;
|
||||
-@@global.wsrep_provider
|
||||
-none
|
||||
-
|
||||
-# scope
|
||||
-SELECT @@session.wsrep_provider;
|
||||
-ERROR HY000: Variable 'wsrep_provider' is a GLOBAL variable
|
||||
-SELECT @@global.wsrep_provider;
|
||||
-@@global.wsrep_provider
|
||||
-none
|
||||
-
|
||||
-# valid values
|
||||
-SET @@global.wsrep_provider=default;
|
||||
-SELECT @@global.wsrep_provider;
|
||||
-@@global.wsrep_provider
|
||||
-none
|
||||
-
|
||||
-# invalid values
|
||||
-SET @@global.wsrep_provider='/invalid/libgalera_smm.so';
|
||||
-ERROR 42000: Variable 'wsrep_provider' can't be set to the value of '/invalid/libgalera_smm.so'
|
||||
-SET @@global.wsrep_provider=NULL;
|
||||
-ERROR 42000: Variable 'wsrep_provider' can't be set to the value of 'NULL'
|
||||
-SELECT @@global.wsrep_provider;
|
||||
-@@global.wsrep_provider
|
||||
-none
|
||||
-SET @@global.wsrep_provider=1;
|
||||
-ERROR 42000: Incorrect argument type to variable 'wsrep_provider'
|
||||
-SELECT @@global.wsrep_provider;
|
||||
-@@global.wsrep_provider
|
||||
-none
|
||||
-
|
||||
-# restore the initial value
|
||||
-SET @@global.wsrep_provider = @wsrep_provider_global_saved;
|
||||
-# End of test
|
||||
diff --git a/mysql-test/suite/sys_vars/r/wsrep_provider_options_basic.result b/mysql-test/suite/sys_vars/r/wsrep_provider_options_basic.result
|
||||
deleted file mode 100644
|
||||
index b2e07c55b38..00000000000
|
||||
--- a/mysql-test/suite/sys_vars/r/wsrep_provider_options_basic.result
|
||||
+++ /dev/null
|
||||
@@ -1,49 +0,0 @@
|
||||
-#
|
||||
-# wsrep_provider_options
|
||||
-#
|
||||
-call mtr.add_suppression("WSREP: Failed to get provider options");
|
||||
-SET @@global.wsrep_provider = @@global.wsrep_provider;
|
||||
-# save the initial value
|
||||
-SET @wsrep_provider_options_global_saved = @@global.wsrep_provider_options;
|
||||
-# default
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-@@global.wsrep_provider_options
|
||||
-
|
||||
-
|
||||
-# scope
|
||||
-SELECT @@session.wsrep_provider_options;
|
||||
-ERROR HY000: Variable 'wsrep_provider_options' is a GLOBAL variable
|
||||
-SET @@global.wsrep_provider_options='option1';
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-@@global.wsrep_provider_options
|
||||
-option1
|
||||
-
|
||||
-# valid values
|
||||
-SET @@global.wsrep_provider_options='name1=value1;name2=value2';
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-@@global.wsrep_provider_options
|
||||
-name1=value1;name2=value2
|
||||
-SET @@global.wsrep_provider_options='hyphenated-name:value';
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-@@global.wsrep_provider_options
|
||||
-hyphenated-name:value
|
||||
-SET @@global.wsrep_provider_options=default;
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-@@global.wsrep_provider_options
|
||||
-
|
||||
-
|
||||
-# invalid values
|
||||
-SET @@global.wsrep_provider_options=1;
|
||||
-ERROR 42000: Incorrect argument type to variable 'wsrep_provider_options'
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-@@global.wsrep_provider_options
|
||||
-
|
||||
-SET @@global.wsrep_provider_options=NULL;
|
||||
-Got one of the listed errors
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-@@global.wsrep_provider_options
|
||||
-NULL
|
||||
-
|
||||
-# restore the initial value
|
||||
-SET @@global.wsrep_provider_options = @wsrep_provider_options_global_saved;
|
||||
-# End of test
|
||||
diff --git a/mysql-test/suite/sys_vars/t/wsrep_notify_cmd_basic.test b/mysql-test/suite/sys_vars/t/wsrep_notify_cmd_basic.test
|
||||
deleted file mode 100644
|
||||
index 6d1535ba148..00000000000
|
||||
--- a/mysql-test/suite/sys_vars/t/wsrep_notify_cmd_basic.test
|
||||
+++ /dev/null
|
||||
@@ -1,43 +0,0 @@
|
||||
---source include/have_wsrep.inc
|
||||
-
|
||||
---echo #
|
||||
---echo # wsrep_notify_cmd
|
||||
---echo #
|
||||
-
|
||||
-call mtr.add_suppression("WSREP: Failed to get provider options");
|
||||
-
|
||||
---echo # save the initial value
|
||||
-SET @wsrep_notify_cmd_global_saved = @@global.wsrep_notify_cmd;
|
||||
-
|
||||
---echo # default
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-
|
||||
---echo
|
||||
---echo # scope
|
||||
---error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
||||
-SELECT @@session.wsrep_notify_cmd;
|
||||
-SET @@global.wsrep_notify_cmd='notify_cmd';
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-
|
||||
---echo
|
||||
---echo # valid values
|
||||
-SET @@global.wsrep_notify_cmd='command';
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-SET @@global.wsrep_notify_cmd='hyphenated-command';
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-SET @@global.wsrep_notify_cmd=default;
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-SET @@global.wsrep_notify_cmd=NULL;
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-
|
||||
---echo
|
||||
---echo # invalid values
|
||||
---error ER_WRONG_TYPE_FOR_VAR
|
||||
-SET @@global.wsrep_notify_cmd=1;
|
||||
-SELECT @@global.wsrep_notify_cmd;
|
||||
-
|
||||
---echo
|
||||
---echo # restore the initial value
|
||||
-SET @@global.wsrep_notify_cmd = @wsrep_notify_cmd_global_saved;
|
||||
-
|
||||
---echo # End of test
|
||||
diff --git a/mysql-test/suite/sys_vars/t/wsrep_provider_basic.test b/mysql-test/suite/sys_vars/t/wsrep_provider_basic.test
|
||||
deleted file mode 100644
|
||||
index 1190ab41bb0..00000000000
|
||||
--- a/mysql-test/suite/sys_vars/t/wsrep_provider_basic.test
|
||||
+++ /dev/null
|
||||
@@ -1,39 +0,0 @@
|
||||
---source include/have_wsrep.inc
|
||||
-
|
||||
---echo #
|
||||
---echo # wsrep_provider
|
||||
---echo #
|
||||
-
|
||||
---echo # save the initial value
|
||||
-SET @wsrep_provider_global_saved = @@global.wsrep_provider;
|
||||
-
|
||||
---echo # default
|
||||
-SELECT @@global.wsrep_provider;
|
||||
-
|
||||
---echo
|
||||
---echo # scope
|
||||
---error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
||||
-SELECT @@session.wsrep_provider;
|
||||
-SELECT @@global.wsrep_provider;
|
||||
-
|
||||
---echo
|
||||
---echo # valid values
|
||||
-SET @@global.wsrep_provider=default;
|
||||
-SELECT @@global.wsrep_provider;
|
||||
-
|
||||
---echo
|
||||
---echo # invalid values
|
||||
---error ER_WRONG_VALUE_FOR_VAR
|
||||
-SET @@global.wsrep_provider='/invalid/libgalera_smm.so';
|
||||
---error ER_WRONG_VALUE_FOR_VAR
|
||||
-SET @@global.wsrep_provider=NULL;
|
||||
-SELECT @@global.wsrep_provider;
|
||||
---error ER_WRONG_TYPE_FOR_VAR
|
||||
-SET @@global.wsrep_provider=1;
|
||||
-SELECT @@global.wsrep_provider;
|
||||
-
|
||||
---echo
|
||||
---echo # restore the initial value
|
||||
-SET @@global.wsrep_provider = @wsrep_provider_global_saved;
|
||||
-
|
||||
---echo # End of test
|
||||
diff --git a/mysql-test/suite/sys_vars/t/wsrep_provider_options_basic.test b/mysql-test/suite/sys_vars/t/wsrep_provider_options_basic.test
|
||||
deleted file mode 100644
|
||||
index d2ea32a0637..00000000000
|
||||
--- a/mysql-test/suite/sys_vars/t/wsrep_provider_options_basic.test
|
||||
+++ /dev/null
|
||||
@@ -1,51 +0,0 @@
|
||||
---source include/have_wsrep.inc
|
||||
-
|
||||
---echo #
|
||||
---echo # wsrep_provider_options
|
||||
---echo #
|
||||
-
|
||||
-call mtr.add_suppression("WSREP: Failed to get provider options");
|
||||
-
|
||||
-SET @@global.wsrep_provider = @@global.wsrep_provider;
|
||||
-
|
||||
---echo # save the initial value
|
||||
-SET @wsrep_provider_options_global_saved = @@global.wsrep_provider_options;
|
||||
-
|
||||
---echo # default
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-
|
||||
---echo
|
||||
---echo # scope
|
||||
---error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
||||
-SELECT @@session.wsrep_provider_options;
|
||||
---error 0,ER_WRONG_ARGUMENTS
|
||||
-SET @@global.wsrep_provider_options='option1';
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-
|
||||
---echo
|
||||
---echo # valid values
|
||||
---error 0,ER_WRONG_ARGUMENTS
|
||||
-SET @@global.wsrep_provider_options='name1=value1;name2=value2';
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
---error 0,ER_WRONG_ARGUMENTS
|
||||
-SET @@global.wsrep_provider_options='hyphenated-name:value';
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
---error 0,ER_WRONG_ARGUMENTS
|
||||
-SET @@global.wsrep_provider_options=default;
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-
|
||||
---echo
|
||||
---echo # invalid values
|
||||
---error ER_WRONG_TYPE_FOR_VAR
|
||||
-SET @@global.wsrep_provider_options=1;
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
---error ER_WRONG_ARGUMENTS,ER_WRONG_ARGUMENTS
|
||||
-SET @@global.wsrep_provider_options=NULL;
|
||||
-SELECT @@global.wsrep_provider_options;
|
||||
-
|
||||
---echo
|
||||
---echo # restore the initial value
|
||||
---error 0,ER_WRONG_ARGUMENTS
|
||||
-SET @@global.wsrep_provider_options = @wsrep_provider_options_global_saved;
|
||||
-
|
||||
---echo # End of test
|
||||
diff --git a/mysql-test/suite/wsrep/disabled.def b/mysql-test/suite/wsrep/disabled.def
|
||||
index c7c8f2c6216..b5304b1c992 100644
|
||||
--- a/mysql-test/suite/wsrep/disabled.def
|
||||
+++ b/mysql-test/suite/wsrep/disabled.def
|
||||
@@ -1,2 +1,4 @@
|
||||
wsrep.foreign_key : Sporadic failure "WSREP has not yet prepared node for application use"
|
||||
|
||||
+
|
||||
+mdev_6832: wsrep_provider is read-only for security reasons
|
||||
diff --git a/mysql-test/suite/wsrep/r/variables.result b/mysql-test/suite/wsrep/r/variables.result
|
||||
index b6f22828532..c944af8c90d 100644
|
||||
--- a/mysql-test/suite/wsrep/r/variables.result
|
||||
+++ b/mysql-test/suite/wsrep/r/variables.result
|
||||
@@ -13,7 +13,6 @@ SET SESSION wsrep_replicate_myisam= ON;
|
||||
ERROR HY000: Variable 'wsrep_replicate_myisam' is a GLOBAL variable and should be set with SET GLOBAL
|
||||
SET GLOBAL wsrep_replicate_myisam= ON;
|
||||
SET GLOBAL wsrep_replicate_myisam= OFF;
|
||||
-SET GLOBAL wsrep_provider=none;
|
||||
#
|
||||
# MDEV#5790: SHOW GLOBAL STATUS LIKE does not show the correct list of
|
||||
# variables when using "_"
|
||||
@@ -134,10 +133,6 @@ wsrep_local_state_comment #
|
||||
# Should show nothing.
|
||||
SHOW STATUS LIKE 'x';
|
||||
Variable_name Value
|
||||
-SET GLOBAL wsrep_provider=none;
|
||||
-#
|
||||
-# MDEV#6079: xtrabackup SST failing with maria-10.0-galera
|
||||
-#
|
||||
|
||||
SHOW STATUS LIKE 'wsrep_local_state_uuid';
|
||||
Variable_name Value
|
||||
@@ -146,7 +141,6 @@ wsrep_local_state_uuid #
|
||||
SHOW STATUS LIKE 'wsrep_last_committed';
|
||||
Variable_name Value
|
||||
wsrep_last_committed #
|
||||
-SET GLOBAL wsrep_provider=none;
|
||||
|
||||
#
|
||||
# MDEV#6206: wsrep_slave_threads subtracts from max_connections
|
||||
@@ -160,30 +154,29 @@ SELECT @@global.wsrep_slave_threads;
|
||||
1
|
||||
SELECT @@global.wsrep_cluster_address;
|
||||
@@global.wsrep_cluster_address
|
||||
-
|
||||
+gcomm://
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
Variable_name Value
|
||||
Threads_connected 1
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
Variable_name Value
|
||||
-wsrep_thread_count 0
|
||||
+wsrep_thread_count 2
|
||||
|
||||
SELECT @@global.wsrep_provider;
|
||||
@@global.wsrep_provider
|
||||
libgalera_smm.so
|
||||
SELECT @@global.wsrep_cluster_address;
|
||||
@@global.wsrep_cluster_address
|
||||
-
|
||||
+gcomm://
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
Variable_name Value
|
||||
Threads_connected 1
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
Variable_name Value
|
||||
-wsrep_thread_count 0
|
||||
+wsrep_thread_count 2
|
||||
|
||||
# Setting wsrep_cluster_address triggers the creation of
|
||||
# applier/rollbacker threads.
|
||||
-SET GLOBAL wsrep_cluster_address= 'gcomm://';
|
||||
# Wait for applier threads to get created.
|
||||
SELECT @@global.wsrep_provider;
|
||||
@@global.wsrep_provider
|
||||
diff --git a/mysql-test/suite/wsrep/t/variables.test b/mysql-test/suite/wsrep/t/variables.test
|
||||
index 1315f090d5c..867af600817 100644
|
||||
--- a/mysql-test/suite/wsrep/t/variables.test
|
||||
+++ b/mysql-test/suite/wsrep/t/variables.test
|
||||
@@ -18,7 +18,7 @@ SET GLOBAL wsrep_replicate_myisam= ON;
|
||||
|
||||
# Reset it back.
|
||||
SET GLOBAL wsrep_replicate_myisam= OFF;
|
||||
-SET GLOBAL wsrep_provider=none;
|
||||
+#SET GLOBAL wsrep_provider=none;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV#5790: SHOW GLOBAL STATUS LIKE does not show the correct list of
|
||||
@@ -27,11 +27,9 @@ SET GLOBAL wsrep_provider=none;
|
||||
|
||||
CALL mtr.add_suppression("WSREP: Could not open saved state file for reading.*");
|
||||
|
||||
---disable_query_log
|
||||
-eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
---let $galera_version=25.3.17
|
||||
+#evalp SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
+--let $galera_version=25.3.24
|
||||
source include/check_galera_version.inc;
|
||||
---enable_query_log
|
||||
|
||||
--replace_column 2 #
|
||||
SHOW GLOBAL STATUS LIKE 'wsrep%';
|
||||
@@ -47,15 +45,13 @@ SHOW GLOBAL STATUS LIKE 'wsrep_local_state_comment';
|
||||
SHOW STATUS LIKE 'x';
|
||||
|
||||
# Reset it back.
|
||||
-SET GLOBAL wsrep_provider=none;
|
||||
+#SET GLOBAL wsrep_provider=none;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV#6079: xtrabackup SST failing with maria-10.0-galera
|
||||
--echo #
|
||||
|
||||
---disable_query_log
|
||||
-eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
---enable_query_log
|
||||
+#evalp SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
|
||||
# The following 2 variables are used in innobackupex during xtrabackup-based
|
||||
# SST.
|
||||
@@ -67,7 +63,7 @@ SHOW STATUS LIKE 'wsrep_local_state_uuid';
|
||||
SHOW STATUS LIKE 'wsrep_last_committed';
|
||||
|
||||
# Reset it back.
|
||||
-SET GLOBAL wsrep_provider=none;
|
||||
+#SET GLOBAL wsrep_provider=none;
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
@@ -75,9 +71,7 @@ SET GLOBAL wsrep_provider=none;
|
||||
--echo #
|
||||
call mtr.add_suppression("WSREP: Failed to get provider options");
|
||||
|
||||
---disable_query_log
|
||||
-eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
---enable_query_log
|
||||
+#evalp SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
|
||||
--replace_regex /.*libgalera_smm.*/libgalera_smm.so/
|
||||
SELECT @@global.wsrep_provider;
|
||||
@@ -87,9 +81,7 @@ SHOW STATUS LIKE 'threads_connected';
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
--echo
|
||||
|
||||
---disable_query_log
|
||||
-eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
---enable_query_log
|
||||
+#evalp SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
|
||||
--replace_regex /.*libgalera_smm.*/libgalera_smm.so/
|
||||
SELECT @@global.wsrep_provider;
|
||||
@@ -100,7 +92,7 @@ SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
|
||||
--echo # Setting wsrep_cluster_address triggers the creation of
|
||||
--echo # applier/rollbacker threads.
|
||||
-SET GLOBAL wsrep_cluster_address= 'gcomm://';
|
||||
+#SET GLOBAL wsrep_cluster_address= 'gcomm://';
|
||||
--echo # Wait for applier threads to get created.
|
||||
sleep 3;
|
||||
|
||||
diff --git a/sql/sys_vars.cc b/sql/sys_vars.cc
|
||||
index 8858259c863..90ca973052b 100644
|
||||
--- a/sql/sys_vars.cc
|
||||
+++ b/sql/sys_vars.cc
|
||||
@@ -5236,7 +5236,7 @@ static Sys_var_tz Sys_time_zone(
|
||||
|
||||
static Sys_var_charptr Sys_wsrep_provider(
|
||||
"wsrep_provider", "Path to replication provider library",
|
||||
- PREALLOCATED GLOBAL_VAR(wsrep_provider), CMD_LINE(REQUIRED_ARG),
|
||||
+ PREALLOCATED READ_ONLY GLOBAL_VAR(wsrep_provider), CMD_LINE(REQUIRED_ARG),
|
||||
IN_FS_CHARSET, DEFAULT(WSREP_NONE),
|
||||
NO_MUTEX_GUARD, NOT_IN_BINLOG,
|
||||
ON_CHECK(wsrep_provider_check), ON_UPDATE(wsrep_provider_update));
|
||||
@@ -5406,7 +5406,7 @@ static Sys_var_ulong Sys_wsrep_max_ws_rows (
|
||||
|
||||
static Sys_var_charptr Sys_wsrep_notify_cmd(
|
||||
"wsrep_notify_cmd", "",
|
||||
- GLOBAL_VAR(wsrep_notify_cmd),CMD_LINE(REQUIRED_ARG),
|
||||
+ READ_ONLY GLOBAL_VAR(wsrep_notify_cmd), CMD_LINE(REQUIRED_ARG),
|
||||
IN_SYSTEM_CHARSET, DEFAULT(""));
|
||||
|
||||
static Sys_var_mybool Sys_wsrep_certify_nonPK(
|
||||
@ -2,7 +2,7 @@
|
||||
|
||||
Name: mariadb
|
||||
Version: 10.3.9
|
||||
Release: 11
|
||||
Release: 12
|
||||
Epoch: 3
|
||||
Summary: One of the most popular database servers
|
||||
License: GPLv2 with exceptions and LGPLv2 and BSD
|
||||
@ -13,6 +13,7 @@ Source0: https://downloads.mariadb.com/MariaDB/mariadb-%{version}/sourc
|
||||
Patch0: 0000-disable-some-unstable-testcases.patch
|
||||
Patch1: 0001-add-install-db-command.patch
|
||||
Patch2: 0002-disable-some-unstable-testcases-2.patch
|
||||
Patch3: CVE-2021-27928.patch
|
||||
|
||||
BuildRequires: selinux-policy-devel, cmake, gcc-c++
|
||||
BuildRequires: systemd, systemd-devel
|
||||
@ -600,6 +601,9 @@ fi
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Apr 26 2021 bzhaoop<bzhaojyathousandy@gmail.com> -3:10.3.9-12
|
||||
- Fix CVE-2021-27928
|
||||
|
||||
* Tue Sep 8 2020 lihaotian<lihaotian9@huawei.com> -3:10.3.9-11
|
||||
- Update the source0 url
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user