summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/wsrep/t
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/wsrep/t')
-rw-r--r--mysql-test/suite/wsrep/t/alter_table_innodb.cnf2
-rw-r--r--mysql-test/suite/wsrep/t/mdev_10186.cnf2
-rw-r--r--mysql-test/suite/wsrep/t/pool_of_threads.test1
-rw-r--r--mysql-test/suite/wsrep/t/variables_debug.test2
-rw-r--r--mysql-test/suite/wsrep/t/wsrep_provider_plugin.cnf8
-rw-r--r--mysql-test/suite/wsrep/t/wsrep_provider_plugin.test41
-rw-r--r--mysql-test/suite/wsrep/t/wsrep_provider_plugin_basic.cnf8
-rw-r--r--mysql-test/suite/wsrep/t/wsrep_provider_plugin_basic.test77
-rw-r--r--mysql-test/suite/wsrep/t/wsrep_provider_plugin_defaults.cnf8
-rw-r--r--mysql-test/suite/wsrep/t/wsrep_provider_plugin_defaults.test34
-rw-r--r--mysql-test/suite/wsrep/t/wsrep_provider_plugin_wsrep_off.cnf12
-rw-r--r--mysql-test/suite/wsrep/t/wsrep_provider_plugin_wsrep_off.test6
-rw-r--r--mysql-test/suite/wsrep/t/wsrep_variables_wsrep_off.cnf2
13 files changed, 199 insertions, 4 deletions
diff --git a/mysql-test/suite/wsrep/t/alter_table_innodb.cnf b/mysql-test/suite/wsrep/t/alter_table_innodb.cnf
index d8e27463..f757621b 100644
--- a/mysql-test/suite/wsrep/t/alter_table_innodb.cnf
+++ b/mysql-test/suite/wsrep/t/alter_table_innodb.cnf
@@ -1,4 +1,4 @@
-!include include/default_mysqld.cnf
+!include include/default_my.cnf
[mysqld]
wsrep-on=0
diff --git a/mysql-test/suite/wsrep/t/mdev_10186.cnf b/mysql-test/suite/wsrep/t/mdev_10186.cnf
index 284c8876..035565fc 100644
--- a/mysql-test/suite/wsrep/t/mdev_10186.cnf
+++ b/mysql-test/suite/wsrep/t/mdev_10186.cnf
@@ -1,4 +1,4 @@
-!include include/default_mysqld.cnf
+!include include/default_my.cnf
[mysqld]
wsrep-on=0
diff --git a/mysql-test/suite/wsrep/t/pool_of_threads.test b/mysql-test/suite/wsrep/t/pool_of_threads.test
index 8e95d0ca..f035236d 100644
--- a/mysql-test/suite/wsrep/t/pool_of_threads.test
+++ b/mysql-test/suite/wsrep/t/pool_of_threads.test
@@ -1,3 +1,4 @@
+--source include/have_innodb.inc
--source include/have_wsrep_enabled.inc
--source include/have_binlog_format_row.inc
diff --git a/mysql-test/suite/wsrep/t/variables_debug.test b/mysql-test/suite/wsrep/t/variables_debug.test
index 5e90d61c..b218586f 100644
--- a/mysql-test/suite/wsrep/t/variables_debug.test
+++ b/mysql-test/suite/wsrep/t/variables_debug.test
@@ -8,7 +8,7 @@
--let $galera_version=26.4.11
source include/check_galera_version.inc;
-source include/galera_variables_ok.inc;
+source include/galera_variables_ok_debug.inc;
--replace_column 2 #
SHOW GLOBAL STATUS LIKE 'wsrep%';
diff --git a/mysql-test/suite/wsrep/t/wsrep_provider_plugin.cnf b/mysql-test/suite/wsrep/t/wsrep_provider_plugin.cnf
new file mode 100644
index 00000000..c61599ac
--- /dev/null
+++ b/mysql-test/suite/wsrep/t/wsrep_provider_plugin.cnf
@@ -0,0 +1,8 @@
+!include ../my.cnf
+
+[mysqld.1]
+wsrep-on=ON
+wsrep-cluster-address=gcomm://
+wsrep-provider=@ENV.WSREP_PROVIDER
+binlog-format=ROW
+plugin-wsrep-provider=ON
diff --git a/mysql-test/suite/wsrep/t/wsrep_provider_plugin.test b/mysql-test/suite/wsrep/t/wsrep_provider_plugin.test
new file mode 100644
index 00000000..453e5bb0
--- /dev/null
+++ b/mysql-test/suite/wsrep/t/wsrep_provider_plugin.test
@@ -0,0 +1,41 @@
+#
+# Verify that system variables can be modified via wsrep_provider
+# plugin and wsrep_provider/wsrep_provider_options cannot be modified.
+#
+
+--source include/have_wsrep.inc
+--source include/have_innodb.inc
+
+--let $galera_version=26.4.14
+source include/check_galera_version.inc;
+
+CREATE TABLE t1 (f1 INT PRIMARY KEY) ENGINE=InnoDB;
+
+SET GLOBAL wsrep_provider_repl_max_ws_size=1;
+SHOW VARIABLES LIKE 'wsrep_provider_repl_max_ws_size';
+
+--error ER_UNKNOWN_ERROR
+INSERT INTO t1 VALUES (1);
+
+SET GLOBAL wsrep_provider_repl_max_ws_size=DEFAULT;
+SHOW VARIABLES LIKE 'wsrep_provider_repl_max_ws_size';
+
+INSERT INTO t1 VALUES (1);
+
+# Variable should be read only, must not take effect
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SET GLOBAL wsrep_provider_options='repl.max_ws_size=1';
+INSERT INTO t1 VALUES (2);
+
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+SET GLOBAL wsrep_provider='none';
+
+DROP TABLE t1;
+
+CALL mtr.add_suppression("transaction size limit");
+CALL mtr.add_suppression("rbr write fail");
+
+#
+# MDEV-30120 :Update the wsrep_provider_options read_only value in the system_variables table.
+#
+SELECT VARIABLE_NAME,READ_ONLY FROM information_schema.system_variables where VARIABLE_NAME like '%wsrep_provider_options%';
diff --git a/mysql-test/suite/wsrep/t/wsrep_provider_plugin_basic.cnf b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_basic.cnf
new file mode 100644
index 00000000..c61599ac
--- /dev/null
+++ b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_basic.cnf
@@ -0,0 +1,8 @@
+!include ../my.cnf
+
+[mysqld.1]
+wsrep-on=ON
+wsrep-cluster-address=gcomm://
+wsrep-provider=@ENV.WSREP_PROVIDER
+binlog-format=ROW
+plugin-wsrep-provider=ON
diff --git a/mysql-test/suite/wsrep/t/wsrep_provider_plugin_basic.test b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_basic.test
new file mode 100644
index 00000000..02854653
--- /dev/null
+++ b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_basic.test
@@ -0,0 +1,77 @@
+--source include/have_wsrep.inc
+--source include/have_innodb.inc
+
+--let $galera_version=26.4.14
+source include/check_galera_version.inc;
+
+#
+# Test string option
+#
+
+select variable_type, global_value from information_schema.system_variables where variable_name = 'wsrep_provider_socket_recv_buf_size';
+--error ER_WRONG_VALUE_FOR_VAR
+set global wsrep_provider_socket_recv_buf_size = 'foo';
+set global wsrep_provider_socket_recv_buf_size = '1M';
+show global variables like 'wsrep_provider_socket_recv_buf_size';
+set global wsrep_provider_socket_recv_buf_size = default;
+show global variables like 'wsrep_provider_socket_recv_buf_size';
+
+
+#
+# Test integer option
+#
+
+select variable_type, global_value from information_schema.system_variables where variable_name = 'wsrep_provider_evs_send_window';
+--error ER_WRONG_VALUE_FOR_VAR
+set global wsrep_provider_evs_send_window = -10;
+set global wsrep_provider_evs_send_window = 10;
+show global variables like 'wsrep_provider_evs_send_window';
+set global wsrep_provider_evs_send_window = default;
+show global variables like 'wsrep_provider_evs_send_window';
+
+
+#
+# Test double option
+#
+
+select variable_type from information_schema.system_variables where variable_name = 'wsrep_provider_gcs_max_throttle';
+--error ER_WRONG_VALUE_FOR_VAR
+set global wsrep_provider_gcs_max_throttle = 1.1;
+set global wsrep_provider_gcs_max_throttle = 0.5;
+show global variables like 'wsrep_provider_gcs_max_throttle';
+set global wsrep_provider_gcs_max_throttle = default;
+show global variables like 'wsrep_provider_gcs_max_throttle';
+
+
+#
+# Test bool option
+#
+
+select variable_type from information_schema.system_variables where variable_name = 'wsrep_provider_cert_log_conflicts';
+set global wsrep_provider_cert_log_conflicts = on;
+show global variables like 'wsrep_provider_cert_log_conflicts';
+set global wsrep_provider_cert_log_conflicts = off;
+show global variables like 'wsrep_provider_cert_log_conflicts';
+set global wsrep_provider_cert_log_conflicts = default;
+show global variables like 'wsrep_provider_cert_log_conflicts';
+
+
+#
+# Test read-only option
+#
+
+select read_only from information_schema.system_variables where variable_name = 'wsrep_provider_evs_auto_evict';
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+set global wsrep_provider_evs_auto_evict = on;
+
+
+#
+# Test deprecated option (expect warning in result file)
+#
+
+set global wsrep_provider_gcs_fc_master_slave = default;
+
+
+call mtr.add_suppression("error setting param");
+call mtr.add_suppression("Unknown parameter");
+call mtr.add_suppression("Setting parameter");
diff --git a/mysql-test/suite/wsrep/t/wsrep_provider_plugin_defaults.cnf b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_defaults.cnf
new file mode 100644
index 00000000..c61599ac
--- /dev/null
+++ b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_defaults.cnf
@@ -0,0 +1,8 @@
+!include ../my.cnf
+
+[mysqld.1]
+wsrep-on=ON
+wsrep-cluster-address=gcomm://
+wsrep-provider=@ENV.WSREP_PROVIDER
+binlog-format=ROW
+plugin-wsrep-provider=ON
diff --git a/mysql-test/suite/wsrep/t/wsrep_provider_plugin_defaults.test b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_defaults.test
new file mode 100644
index 00000000..e65d5130
--- /dev/null
+++ b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_defaults.test
@@ -0,0 +1,34 @@
+--source include/have_wsrep.inc
+--source include/have_innodb.inc
+
+--let $galera_version=26.4.16
+source include/check_galera_version.inc;
+
+SELECT COUNT(*) FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME LIKE 'wsrep_provider%' AND VARIABLE_NAME NOT IN (
+ 'wsrep_provider',
+ 'wsrep_provider_options',
+ 'wsrep_provider_base_dir',
+ 'wsrep_provider_base_port',
+ 'wsrep_provider_gcache_dir',
+ 'wsrep_provider_dbug',
+ 'wsrep_provider_gcache_debug',
+ 'wsrep_provider_signal',
+ 'wsrep_provider_protonet_backend',
+ 'wsrep_provider_repl_proto_max',
+ 'wsrep_provider_gmcast_listen_addr');
+
+--vertical_results
+SELECT * FROM INFORMATION_SCHEMA.SYSTEM_VARIABLES
+WHERE VARIABLE_NAME LIKE 'wsrep_provider_%' AND VARIABLE_NAME NOT IN (
+ 'wsrep_provider',
+ 'wsrep_provider_options',
+ 'wsrep_provider_base_dir',
+ 'wsrep_provider_base_port',
+ 'wsrep_provider_gcache_dir',
+ 'wsrep_provider_dbug',
+ 'wsrep_provider_gcache_debug',
+ 'wsrep_provider_signal',
+ 'wsrep_provider_protonet_backend',
+ 'wsrep_provider_repl_proto_max',
+ 'wsrep_provider_gmcast_listen_addr')
+ORDER BY VARIABLE_NAME;
diff --git a/mysql-test/suite/wsrep/t/wsrep_provider_plugin_wsrep_off.cnf b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_wsrep_off.cnf
new file mode 100644
index 00000000..cd129a29
--- /dev/null
+++ b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_wsrep_off.cnf
@@ -0,0 +1,12 @@
+# Use default setting for mysqld processes
+!include include/default_my.cnf
+
+[mysqld]
+wsrep-on=OFF
+
+[mysqld.1]
+wsrep-on=OFF
+#galera_port=@OPT.port
+#ist_port=@OPT.port
+#sst_port=@OPT.port
+plugin-wsrep-provider=ON
diff --git a/mysql-test/suite/wsrep/t/wsrep_provider_plugin_wsrep_off.test b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_wsrep_off.test
new file mode 100644
index 00000000..b99b8769
--- /dev/null
+++ b/mysql-test/suite/wsrep/t/wsrep_provider_plugin_wsrep_off.test
@@ -0,0 +1,6 @@
+--source include/have_wsrep.inc
+--source include/have_innodb.inc
+
+SELECT @@wsrep_on;
+
+select variable_type, global_value from information_schema.system_variables where variable_name = 'wsrep_provider%';
diff --git a/mysql-test/suite/wsrep/t/wsrep_variables_wsrep_off.cnf b/mysql-test/suite/wsrep/t/wsrep_variables_wsrep_off.cnf
index 2e66b1ef..23b1392e 100644
--- a/mysql-test/suite/wsrep/t/wsrep_variables_wsrep_off.cnf
+++ b/mysql-test/suite/wsrep/t/wsrep_variables_wsrep_off.cnf
@@ -1,5 +1,5 @@
# Use default setting for mysqld processes
-!include include/default_mysqld.cnf
+!include include/default_my.cnf
[mysqld]
wsrep-on=OFF