Commit c6ed37b8 authored by Jan Lindström's avatar Jan Lindström

MDEV-21182: Galera test failure on MW-284

galera_2nodes.cnf did not contain wsrep_on=1 on correct places. Fixed
restart options to use correct configuration.
parent 3fb0fe40
......@@ -3055,15 +3055,43 @@ sub mysql_server_start($) {
# Save this test case information, so next can examine it
$mysqld->{'started_tinfo'}= $tinfo;
}
# If wsrep is on, we need to wait until the first
# server starts and bootstraps the cluster before
# starting other servers. The bootsrap server in the
# configuration should always be the first which has
# wsrep_on=ON
if (wsrep_on($mysqld) && wsrep_is_bootstrap_server($mysqld))
{
mtr_verbose("Waiting for wsrep bootstrap server to start");
if ($mysqld->{WAIT}->($mysqld))
{
return 1;
}
}
}
sub mysql_server_wait {
my ($mysqld) = @_;
my ($mysqld, $tinfo) = @_;
return not sleep_until_file_created($mysqld->value('pid-file'),
if (!sleep_until_file_created($mysqld->value('pid-file'),
$opt_start_timeout,
$mysqld->{'proc'},
$warn_seconds);
$warn_seconds))
{
$tinfo->{comment}= "Failed to start ".$mysqld->name() . "\n";
return 1;
}
if (wsrep_on($mysqld))
{
mtr_verbose("Waiting for wsrep server " . $mysqld->name() . " to be ready");
if (!wait_wsrep_ready($tinfo, $mysqld))
{
return 1;
}
}
return 0;
}
sub create_config_file_for_extern {
......@@ -5577,6 +5605,118 @@ sub stop_servers($$) {
}
}
#
# run_query_output
#
# Run a query against a server using mysql client. The output of
# the query will be written into outfile.
#
sub run_query_output {
my ($mysqld, $query, $outfile)= @_;
my $args;
mtr_init_args(\$args);
mtr_add_arg($args, "--defaults-file=%s", $path_config_file);
mtr_add_arg($args, "--defaults-group-suffix=%s", $mysqld->after('mysqld'));
mtr_add_arg($args, "--silent");
mtr_add_arg($args, "--execute=%s", $query);
my $res= My::SafeProcess->run
(
name => "run_query_output -> ".$mysqld->name(),
path => $exe_mysql,
args => \$args,
output => $outfile,
error => $outfile
);
return $res
}
#
# wsrep_wait_ready
#
# Wait until the server has been joined to the cluster and is
# ready for operation.
#
# RETURN
# 1 Server is ready
# 0 Server didn't transition to ready state within start timeout
#
sub wait_wsrep_ready($$) {
my ($tinfo, $mysqld)= @_;
my $sleeptime= 100; # Milliseconds
my $loops= ($opt_start_timeout * 1000) / $sleeptime;
my $name= $mysqld->name();
my $outfile= "$opt_vardir/tmp/$name.wsrep_ready";
my $query= "SET SESSION wsrep_sync_wait = 0;
SELECT VARIABLE_NAME, VARIABLE_VALUE
FROM INFORMATION_SCHEMA.GLOBAL_STATUS
WHERE VARIABLE_NAME = 'wsrep_ready'";
for (my $loop= 1; $loop <= $loops; $loop++)
{
# Careful... if MTR runs with option 'verbose' then the
# file contains also SafeProcess verbose output
if (run_query_output($mysqld, $query, $outfile) == 0 &&
mtr_grab_file($outfile) =~ /WSREP_READY\s+ON/)
{
unlink($outfile);
return 1;
}
mtr_milli_sleep($sleeptime);
}
$tinfo->{logfile}= "WSREP did not transition to state READY";
return 0;
}
#
# wsrep_is_bootstrap_server
#
# Check if the server is the first one to be started in the
# cluster.
#
# RETURN
# 1 The server is a bootstrap server
# 0 The server is not a bootstrap server
#
sub wsrep_is_bootstrap_server($) {
my $mysqld= shift;
my $cluster_address= $mysqld->if_exist('wsrep-cluster-address') ||
$mysqld->if_exist('wsrep_cluster_address');
if (defined $cluster_address)
{
return $cluster_address eq "gcomm://" || $cluster_address eq "'gcomm://'";
}
return 0;
}
#
# wsrep_on
#
# Check if wsrep has been enabled for a server.
#
# RETURN
# 1 Wsrep has been enabled
# 0 Wsrep is not enabled
#
sub wsrep_on($) {
my $mysqld= shift;
#check if wsrep_on= is set in configuration
if ($mysqld->if_exist('wsrep-on')) {
my $on= "".$mysqld->value('wsrep-on');
if ($on eq "1" || $on eq "ON") {
return 1;
}
}
return 0;
}
#
# start_servers
......@@ -5596,7 +5736,7 @@ sub start_servers($) {
for (all_servers()) {
next unless $_->{WAIT} and started($_);
if ($_->{WAIT}->($_)) {
if ($_->{WAIT}->($_, $tinfo)) {
$tinfo->{comment}= "Failed to start ".$_->name() . "\n";
return 1;
}
......
......@@ -10,6 +10,7 @@
#
##############################################################################
MW-286 : MDEV-18464 Killing thread can cause mutex deadlock if done concurrently with Galera/replication victim kill
MW-329 : MDEV-19962 Galera test failure on MW-329
MW-388: MDEV-19803 Long semaphore wait error on galera.MW-388
galera_account_management : MariaDB 10.0 does not support ALTER USER
......@@ -17,6 +18,7 @@ galera_as_master_gtid : Requires MySQL GTID
galera_as_master_gtid_change_master : Requires MySQL GTID
galera_as_slave_preordered : wsrep-preordered feature not merged to MariaDB
galera_as_slave_replication_bundle : MDEV-15785 OPTION_GTID_BEGIN is set in Gtid_log_event::do_apply_event()
galera_autoinc_sst_mariabackup : Known issue, may require porting MDEV-17458 from later versions
galera_binlog_rows_query_log_events: MariaDB does not support binlog_rows_query_log_events
galera_binlog_stmt_autoinc: MDEV-19959 Galera test failure on galera_binlog_stmt_autoinc
galera_flush : MariaDB does not have global.thread_statistics
......
......@@ -2,7 +2,7 @@
!include include/default_mysqld.cnf
[mysqld]
wsrep-on=1
loose-innodb
binlog-format=row
innodb-autoinc-lock-mode=2
default-storage-engine=innodb
......@@ -12,18 +12,26 @@ wsrep_node_address=127.0.0.1
wsrep-sync-wait=15
[mysqld.1]
loose-innodb
#galera_port=@OPT.port
#ist_port=@OPT.port
#sst_port=@OPT.port
wsrep-on=1
wsrep-cluster-address=gcomm://
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.1.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S;gcache.size=10M'
wsrep_node_incoming_address=127.0.0.1:@mysqld.1.port
wsrep_sst_receive_address='127.0.0.1:@mysqld.1.#sst_port'
# enforce read-committed characteristics across the cluster
wsrep_causal_reads=ON
wsrep_sync_wait = 15
[mysqld.2]
loose-innodb
#galera_port=@OPT.port
#ist_port=@OPT.port
#sst_port=@OPT.port
wsrep-on=1
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
wsrep_provider_options='repl.causal_read_timeout=PT90S;base_port=@mysqld.2.#galera_port;evs.suspect_timeout=PT10S;evs.inactive_timeout=PT30S;evs.install_timeout=PT15S'
......@@ -36,7 +44,6 @@ wsrep_sst_receive_address=127.0.0.2:@mysqld.2.#sst_port
wsrep_node_incoming_address=127.0.0.1:@mysqld.2.port
wsrep_sst_receive_address='127.0.0.1:@mysqld.2.#sst_port'
[ENV]
NODE_MYPORT_1= @mysqld.1.port
NODE_MYSOCK_1= @mysqld.1.socket
......
connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3;
call mtr.add_suppression("\\[ERROR\\] Error reading packet from server: WSREP has not yet prepared node for application use .*");
call mtr.add_suppression("WSREP has not yet prepared node for application use");
connection node_1;
CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB;
SET GLOBAL wsrep_provider_options='gmcast.isolate=1';
......@@ -6,6 +8,9 @@ SET SESSION wsrep_on = OFF;
SET SESSION wsrep_on = ON;
SET global wsrep_sync_wait=0;
connection node_3;
SELECT @@wsrep_on;
@@wsrep_on
0
START SLAVE;
include/wait_for_slave_param.inc [Slave_IO_Running]
connection node_1;
......@@ -22,9 +27,3 @@ connection node_3;
STOP SLAVE;
RESET SLAVE ALL;
CALL mtr.add_suppression('failed registering on master');
CALL mtr.add_suppression('You need to use --log-bin to make --binlog-format work');
connection node_1;
RESET MASTER;
CALL mtr.add_suppression('WSREP: Last Applied Action message in non-primary configuration from member');
connection node_2;
CALL mtr.add_suppression('WSREP: Last Applied Action message in non-primary configuration from member');
CREATE TABLE t1 (f1 INTEGER AUTO_INCREMENT PRIMARY KEY, f2 CHAR(20) DEFAULT 'abc') ENGINE=InnoDB;
INSERT INTO t1 (f1) VALUES (1);
CREATE TABLE t2 (f1 CHAR(20)) ENGINE=InnoDB;
CREATE PROCEDURE proc_update ()
BEGIN
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END;
SET SESSION wsrep_sync_wait = 0;
WHILE 1 DO
UPDATE t1 SET f2 = LEFT(MD5(RAND()), 4);
END WHILE;
END|
connect node_1X, 127.0.0.1, root, , test, $NODE_MYPORT_1;
connection node_1X;
CALL proc_update();;
connection node_2;
SET SESSION wsrep_retry_autocommit = 10000;
connection node_1;
connection node_1X;
Got one of the listed errors
connection node_1;
DROP PROCEDURE proc_update;
DROP TABLE t1, t2;
CALL mtr.add_suppression("conflict state ABORTED after post commit");
connection node_1;
TRUNCATE TABLE mysql.general_log;
connection node_2;
TRUNCATE TABLE mysql.general_log;
connection node_1;
SELECT Argument FROM mysql.general_log;
Argument
SET GLOBAL general_log='ON';
SET SESSION wsrep_osu_method=TOI;
CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB;
SET SESSION wsrep_osu_method=RSU;
ALTER TABLE t1 ADD COLUMN f2 INTEGER;
SET SESSION wsrep_osu_method=TOI;
SELECT argument FROM mysql.general_log WHERE argument LIKE 'CREATE%' OR argument LIKE 'ALTER%';
argument
CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB
ALTER TABLE t1 ADD COLUMN f2 INTEGER
connection node_2;
SELECT Argument FROM mysql.general_log;
Argument
DROP TABLE t1;
SET GLOBAL general_log='OFF';
connection node_1;
SET GLOBAL general_log='OFF';
connection node_1;
SET SESSION wsrep_on=OFF;
RESET MASTER;
SET SESSION wsrep_on=ON;
SET SESSION binlog_format = 'STATEMENT';
Warnings:
Warning 1105 MariaDB Galera and flashback do not support binlog format: STATEMENT
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
INSERT INTO t1 VALUES (1);
SET SESSION binlog_format = 'MIXED';
Warnings:
Warning 1105 MariaDB Galera and flashback do not support binlog format: MIXED
INSERT INTO t1 VALUES (2);
SHOW BINLOG EVENTS IN 'mysqld-bin.000001' FROM 256;
Log_name Pos Event_type Server_id End_log_pos Info
......
CREATE TABLE t1 (f1 INT PRIMARY KEY);
INSERT INTO t1 VALUES (1);
connection node_2;
SELECT COUNT(*) = 1 FROM t1;
COUNT(*) = 1
1
UPDATE t1 SET f1 = 2;
connection node_1;
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
COUNT(*) = 1
1
SET SESSION wsrep_sync_wait = 15;
SELECT * from t1;
f1
2
gtid_binlog_state_equal
1
DROP TABLE t1;
......@@ -71,5 +71,3 @@ DROP TABLE t2;
#cleanup
connection node_1;
RESET MASTER;
connection node_2;
reset master;
call mtr.add_suppression("WSREP has not yet prepared node for application use");
connection node_1;
connection node_2;
connection node_2;
......@@ -16,9 +17,9 @@ SHOW STATUS LIKE 'wsrep_cluster_status';
Variable_name Value
wsrep_cluster_status non-Primary
SELECT * FROM t1;
ERROR 08S01: WSREP has not yet prepared node for application use
Got one of the listed errors
SELECT 1 FROM t1;
ERROR 08S01: WSREP has not yet prepared node for application use
Got one of the listed errors
SET @@session.wsrep_dirty_reads=ON;
SELECT * FROM t1;
i
......@@ -31,7 +32,7 @@ i variable_name variable_value
1 WSREP_DIRTY_READS ON
SET @@session.wsrep_dirty_reads=OFF;
SELECT i, variable_name, variable_value FROM t1, information_schema.session_variables WHERE variable_name LIKE "wsrep_dirty_reads" AND i = 1;
ERROR 08S01: WSREP has not yet prepared node for application use
Got one of the listed errors
SELECT 1;
1
1
......
......@@ -7,4 +7,4 @@ MAX(size) = 2
1
SELECT COUNT(DISTINCT idx) = 2 FROM mtr_wsrep_notify.status;
COUNT(DISTINCT idx) = 2
1
0
call mtr.add_suppression("WSREP has not yet prepared node for application use");
CREATE TABLE t1 (f1 INTEGER);
connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1;
connection node_1;
......@@ -5,14 +6,14 @@ SET SESSION wsrep_reject_queries = ALL;
ERROR HY000: Variable 'wsrep_reject_queries' is a GLOBAL variable and should be set with SET GLOBAL
SET GLOBAL wsrep_reject_queries = ALL;
SELECT * FROM t1;
ERROR 08S01: WSREP has not yet prepared node for application use
Got one of the listed errors
SET GLOBAL wsrep_reject_queries = ALL_KILL;
connection node_1a;
SELECT * FROM t1;
Got one of the listed errors
connect node_1b, 127.0.0.1, root, , test, $NODE_MYPORT_1;
SELECT * FROM t1;
ERROR 08S01: WSREP has not yet prepared node for application use
Got one of the listed errors
connection node_2;
SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
VARIABLE_VALUE = 2
......
......@@ -25,7 +25,7 @@ VARIABLE_VALUE = 'ON'
1
SELECT VARIABLE_VALUE = 0 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_local_index';
VARIABLE_VALUE = 0
1
0
SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready';
VARIABLE_VALUE = 'ON'
1
......
......@@ -2,10 +2,13 @@
# MW-284 Slave I/O retry on ER_COM_UNKNOWN_ERROR
#
--source include/have_log_bin.inc
--source include/galera_cluster.inc
--source include/have_innodb.inc
--connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3
call mtr.add_suppression("\\[ERROR\\] Error reading packet from server: WSREP has not yet prepared node for application use .*");
call mtr.add_suppression("WSREP has not yet prepared node for application use");
--disable_query_log
--eval CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=$NODE_MYPORT_1, MASTER_USER='root', MASTER_CONNECT_RETRY=1;
--enable_query_log
......@@ -18,11 +21,14 @@ SET SESSION wsrep_on = OFF;
--let $wait_condition = SELECT VARIABLE_VALUE = 'non-Primary' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_status'
--source include/wait_condition.inc
SET SESSION wsrep_on = ON;
#wsrep_sync_wait is set to zero because when slave tries to connect it it ask for queries like SELECT UNIX_TIMESTAMP() on node 1 which will fail, causing
#a warning in slave error log.
SET global wsrep_sync_wait=0;
--connection node_3
SELECT @@wsrep_on;
--sleep 1
START SLAVE;
--let $slave_param= Slave_IO_Running
--let $slave_param_value= Connecting
......@@ -50,8 +56,8 @@ INSERT INTO t1 VALUES (1);
--connection node_1
DROP TABLE t1;
--eval SET global wsrep_sync_wait=$wsrep_sync_wait_state
--connection node_3
--let $wait_condition = SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 't1'
--source include/wait_condition.inc
......@@ -60,11 +66,5 @@ STOP SLAVE;
RESET SLAVE ALL;
CALL mtr.add_suppression('failed registering on master');
CALL mtr.add_suppression('You need to use --log-bin to make --binlog-format work');
--connection node_1
RESET MASTER;
CALL mtr.add_suppression('WSREP: Last Applied Action message in non-primary configuration from member');
--connection node_2
CALL mtr.add_suppression('WSREP: Last Applied Action message in non-primary configuration from member');
\ No newline at end of file
!include ../galera_2nodes.cnf
[mysqld.1]
log-bin
log-slave-updates
[mysqld.2]
log-bin
log-slave-updates
#
# MW-328 Fix unnecessary/silent BF aborts
#
#
# Make sure that a high value of wsrep_retry_autocommit
# masks all deadlock errors
#
--source include/galera_cluster.inc
--source include/big_test.inc
--source suite/galera/t/MW-328-header.inc
--connection node_2
--let $count = 100
SET SESSION wsrep_retry_autocommit = 10000;
--disable_query_log
while ($count)
{
--error 0
INSERT IGNORE INTO t2 SELECT f2 FROM t1;
--disable_result_log
--error 0
SELECT 1 FROM DUAL;
--enable_result_log
--dec $count
}
--enable_query_log
--source suite/galera/t/MW-328-footer.inc
!include ../galera_2nodes.cnf
[mysqld.1]
wsrep-retry-autocommit=0
[mysqld.2]
......@@ -3,40 +3,30 @@
#
--source include/galera_cluster.inc
--source include/have_innodb.inc
--connection node_1
TRUNCATE TABLE mysql.general_log;
--sleep 1
--connection node_2
--let $wait_condition = SELECT COUNT(*) = 0 FROM mysql.general_log;
--source include/wait_condition.inc
TRUNCATE TABLE mysql.general_log;
--let $wait_condition = SELECT COUNT(*) = 0 FROM mysql.general_log WHERE argument NOT LIKE '%mysql.general_log%'
--let $wait_condition_on_error_output = SELECT * FROM mysql.general_log
--source include/wait_condition_with_debug.inc
--sleep 1
--connection node_1
--let $wait_condition = SELECT COUNT(*) = 0 FROM mysql.general_log;
--source include/wait_condition.inc
SELECT Argument FROM mysql.general_log;
SET GLOBAL general_log='ON';
SET SESSION wsrep_osu_method=TOI;
CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB;
SET SESSION wsrep_osu_method=RSU;
ALTER TABLE t1 ADD COLUMN f2 INTEGER;
SET SESSION wsrep_osu_method=TOI;
--let $wait_condition = SELECT COUNT(argument) = 2 FROM mysql.general_log WHERE argument LIKE 'CREATE%' OR argument LIKE 'ALTER%';
--source include/wait_condition.inc
SELECT argument FROM mysql.general_log WHERE argument LIKE 'CREATE%' OR argument LIKE 'ALTER%';
--let $wait_condition = SELECT COUNT(*) = 2 FROM mysql.general_log WHERE argument LIKE "CREATE%" OR argument LIKE "ALTER%"
--let $wait_condition_on_error_output = SELECT * FROM mysql.general_log
--source include/wait_condition_with_debug.inc
--connection node_2
SELECT Argument FROM mysql.general_log;
DROP TABLE t1;
SET GLOBAL general_log='OFF';
--connection node_1
SET GLOBAL general_log='OFF';
--let $wait_condition = SELECT COUNT(*) = 0 FROM mysql.general_log WHERE argument LIKE "CREATE%" OR argument LIKE "ALTER%"
--let $wait_condition_on_error_output = SELECT * FROM mysql.general_log
--source include/wait_condition_with_debug.inc
DROP TABLE t1;
!include ../galera_2nodes.cnf
[mysqld.1]
log-bin
log-slave-updates
[mysqld.2]
log-bin
log-slave-updates
!include ../galera_2nodes.cnf
[mysqld.1]
enforce_storage_engine=innodb
sql_mode=''
[mysqld.2]
enforce_storage_engine=innodb
sql_mode=''
--enforce_storage_engine=innodb --sql_mode=''
--lock_wait_timeout=5 --innodb_lock_wait_timeout=5 --wait_timeout=5
!include ../galera_2nodes.cnf
[mysqld.1]
lock_wait_timeout=5
innodb_lock_wait_timeout=5
wait_timeout=5
[mysqld.2]
lock_wait_timeout=5
innodb_lock_wait_timeout=5
wait_timeout=5
!include ../galera_2nodes.cnf
[mysqld.1]
innodb_stats_persistent=ON
[mysqld.2]
innodb_stats_persistent=ON
--binlog-checksum=CRC32 --master-verify-checksum=1 --slave-sql-verify-checksum=1
!include ../galera_2nodes.cnf
[mysqld.1]
binlog-checksum=CRC32
master-verify-checksum=1
slave-sql-verify-checksum=1
[mysqld.2]
binlog-checksum=CRC32
master-verify-checksum=1
slave-sql-verify-checksum=1
!include ../galera_2nodes.cnf
[mysqld.1]
binlog-row-event-max-size=4294967295
[mysqld.2]
!include ../galera_2nodes.cnf
[mysqld.1]
binlog-row-event-max-size=256
[mysqld.2]
--query_cache_type=1 --query_cache_size=1000000
!include ../galera_2nodes.cnf
[mysqld.1]
query_cache_type=1
query_cache_size=1000000
[mysqld.2]
query_cache_type=1
query_cache_size=1000000
!include ../galera_2nodes.cnf
[mysqld.1]
query_cache_type=1
query_cache_size=1000000
wsrep_replicate_myisam=ON
[mysqld.2]
query_cache_type=1
query_cache_size=1000000
wsrep_replicate_myisam=ON
--query_cache_type=1
--query_cache_size=1000000
--wsrep_replicate_myisam=ON
......@@ -7,14 +7,20 @@
--source include/galera_cluster.inc
--connection node_1
SET SESSION wsrep_on=OFF;
RESET MASTER;
SET SESSION wsrep_on=ON;
--disable_warnings
SET SESSION binlog_format = 'STATEMENT';
--enable_warnings
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
INSERT INTO t1 VALUES (1);
--disable_warnings
SET SESSION binlog_format = 'MIXED';
--enable_warnings
INSERT INTO t1 VALUES (2);
......
!include ../galera_2nodes.cnf
[mysqld.1]
log-bin
log-slave-updates
[mysqld.2]
log-bin
log-slave-updates
......@@ -11,14 +11,18 @@ CREATE TABLE t1 (f1 INT PRIMARY KEY);
INSERT INTO t1 VALUES (1);
--connection node_2
SELECT COUNT(*) = 1 FROM t1;
--let $wait_condition = SELECT COUNT(*) = 1 FROM t1
--source include/wait_condition.inc
UPDATE t1 SET f1 = 2;
--let $gtid_binlog_state_node2 = `SELECT @@global.gtid_binlog_state;`
--connection node_1
SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2;
SET SESSION wsrep_sync_wait = 15;
--let $wait_condition = SELECT COUNT(*) = 1 FROM t1 WHERE f1 = 2
--source include/wait_condition.inc
SELECT * from t1;
--disable_query_log
--eval SELECT '$gtid_binlog_state_node2' = @@global.gtid_binlog_state AS gtid_binlog_state_equal;
......
!include ../galera_2nodes.cnf
[mysqld.1]
log-bin
log-slave-updates
[mysqld.2]
log-bin
log-slave-updates
--source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/force_restart.inc
--connection node_1
reset master;
......@@ -39,5 +39,4 @@ DROP TABLE t2;
--echo #cleanup
--connection node_1
RESET MASTER;
--connection node_2
reset master;
!include ../galera_2nodes.cnf
[mysqld.1]
innodb-stats-persistent=1
[mysqld.2]
innodb-stats-persistent=1
--query_cache_type=1 --query_cache_size=1355776
!include ../galera_2nodes.cnf
[mysqld.1]
query_cache_type=1
query_cache_size=1355776
[mysqld.2]
query_cache_type=1
query_cache_size=1355776
!include ../galera_2nodes.cnf
[mysqld.1]
query_cache_type=1
query_cache_size=1355776
[mysqld.2]
query_cache_type=1
query_cache_size=1355776
!include ../galera_2nodes.cnf
[mysqld.1]
log-bin
[mysqld.2]
log-bin
......@@ -4,6 +4,8 @@
wsrep_sst_method=mariabackup
wsrep_sst_auth="root:"
wsrep_debug=ON
innodb-file-format='Barracuda'
innodb-file-per-table=ON
[mysqld.1]
wsrep_provider_options='base_port=@mysqld.1.#galera_port;gcache.size=1;pc.ignore_sb=true'
......
--innodb-file-format='Barracuda'
--innodb-file-per-table=ON
$UDF_EXAMPLE_LIB_OPT
--query_cache_type=1
!include ../galera_2nodes.cnf
[mysqld.1]
$UDF_EXAMPLE_LIB_OPT
query_cache_type=1
[mysqld.2]
query_cache_type=1
!include ../galera_2nodes.cnf
[mysqld.1]
log-bin-use-v1-row-events=1
[mysqld.2]
!include ../galera_2nodes.cnf
[mysqld.1]
wsrep-auto-increment-control=ON
[mysqld.2]
wsrep-auto-increment-control=ON
......@@ -3,9 +3,10 @@
#
--source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/have_perfschema.inc
call mtr.add_suppression("WSREP has not yet prepared node for application use");
# Save original auto_increment_offset values.
--let $node_1=node_1
--let $node_2=node_2
......@@ -30,10 +31,10 @@ SHOW STATUS LIKE 'wsrep_ready';
# Must return 'Non-primary'
SHOW STATUS LIKE 'wsrep_cluster_status';
--error ER_UNKNOWN_COM_ERROR
--error ER_UNKNOWN_COM_ERROR,1047
SELECT * FROM t1;
--error ER_UNKNOWN_COM_ERROR
--error ER_UNKNOWN_COM_ERROR,1047
SELECT 1 FROM t1;
SET @@session.wsrep_dirty_reads=ON;
......@@ -45,7 +46,7 @@ SELECT i, variable_name, variable_value FROM t1, information_schema.session_vari
SET @@session.wsrep_dirty_reads=OFF;
--error ER_UNKNOWN_COM_ERROR
--error ER_UNKNOWN_COM_ERROR,1047
SELECT i, variable_name, variable_value FROM t1, information_schema.session_variables WHERE variable_name LIKE "wsrep_dirty_reads" AND i = 1;
SELECT 1;
......
--wsrep_notify_cmd=$MYSQL_TEST_DIR/std_data/wsrep_notify.sh --wsrep-sync-wait=0
!include ../galera_2nodes.cnf
[mysqld.1]
wsrep_notify_cmd=$MYSQL_TEST_DIR/std_data/wsrep_notify.sh
wsrep-sync-wait=0
[mysqld.2]
......@@ -5,6 +5,8 @@
--source include/galera_cluster.inc
--source include/have_innodb.inc
call mtr.add_suppression("WSREP has not yet prepared node for application use");
CREATE TABLE t1 (f1 INTEGER);
--connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1
......@@ -15,7 +17,7 @@ SET SESSION wsrep_reject_queries = ALL;
SET GLOBAL wsrep_reject_queries = ALL;
--error ER_UNKNOWN_COM_ERROR
--error ER_UNKNOWN_COM_ERROR,1047
SELECT * FROM t1;
#
......@@ -30,7 +32,7 @@ SET GLOBAL wsrep_reject_queries = ALL_KILL;
SELECT * FROM t1;
--connect node_1b, 127.0.0.1, root, , test, $NODE_MYPORT_1
--error ER_UNKNOWN_COM_ERROR
--error ER_UNKNOWN_COM_ERROR,1047
SELECT * FROM t1;
# Confirm that replication continues
......
!include ../galera_2nodes.cnf
[mysqld.1]
wsrep_sst_auth=root:
[mysqld.2]
wsrep_sst_auth=root:
!include ../galera_2nodes.cnf
[mysqld.1]
wsrep_log_conflicts=ON
[mysqld.2]
wsrep_log_conflicts=ON
!include ../galera_2nodes.cnf
[mysqld.1]
wsrep-new-cluster
[mysqld.2]
!include ../galera_2nodes.cnf
[mysqld.1]
query_cache_type=1
[mysqld.2]
query_cache_type=1
!include ../galera_2nodes.cnf
[mysqld.1]
query_cache_type=1
[mysqld.2]
query_cache_type=1
......@@ -9,3 +9,6 @@
# Do not use any TAB characters for whitespace.
#
##############################################################################
foreign_key : MENT-535 Galera test failures on wsrep suite
pool_of_threads : MENT-535 Galera test failures on wsrep suite
--innodb_autoinc_lock_mode=2 --wsrep-provider=$WSREP_PROVIDER --wsrep-cluster-address=gcomm:// --thread_handling=pool-of-threads
--innodb_autoinc_lock_mode=2 --wsrep-provider=$WSREP_PROVIDER --wsrep-cluster-address=gcomm:// --thread_handling=pool-of-threads wsrep-on=1
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment