summaryrefslogtreecommitdiff
path: root/mysql-test/suite/galera_3nodes/t/galera_ipv6_mariabackup.test
blob: 51778f40ddfa29cf4f99060dd28fccac9b56fe72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
--let galera_connection_address=::1
--source include/galera_cluster.inc
--source include/check_ipv6.inc
--source include/have_innodb.inc
--source include/have_mariabackup.inc
--source include/force_restart.inc

# Confirm that initial handshake happened over ipv6

SELECT VARIABLE_VALUE LIKE '%[::1]%' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_incoming_addresses';
SELECT VARIABLE_VALUE = 3 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';

# Force IST

--connection node_2
SET GLOBAL wsrep_provider_options='gmcast.isolate=1';

--connection node_1
--let $wait_condition = SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
--source include/wait_condition.inc

CREATE TABLE t1 (f1 INTEGER NOT NULL PRIMARY KEY) ENGINE=InnoDB;
INSERT INTO t1 VALUES (1);

--connection node_2
SET GLOBAL wsrep_provider_options='gmcast.isolate=0';

--let $wait_condition = SELECT VARIABLE_VALUE = 3 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
--source include/wait_condition.inc

--let $wait_condition = SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready';
--source include/wait_condition.inc

SELECT COUNT(*) AS EXPECT_1 FROM t1;

DROP TABLE t1;

# Confirm that key messages around SST and IST reference IPv6

--connection node_1
--let $assert_file = $MYSQLTEST_VARDIR/log/mysqld.1.err
--let $assert_only_after = CURRENT_TEST

# The SSTs happen when nodes are started first time
--let $assert_count = 2
--let $assert_text = Streaming the backup to joiner at \[::1\]
--let $assert_select = Streaming the backup to joiner at \[::1\]
--source include/assert_grep.inc

# There will be 3 ISTs donated from node_1 in Galera 4.
# Two first happen at the initial startup to populate the certification
# index. The third one is from the IST which happens during the actual test.
--let $assert_count = 3
--let $assert_text = async IST sender starting to serve tcp://\[::1\]:
--let $assert_select = async IST sender starting to serve tcp://\[::1\]:
--source include/assert_grep.inc

--let $assert_file = $MYSQLTEST_VARDIR/log/mysqld.2.err

# There are two ISTs on joiner, the first at the initial startup, the second
# during the actual test.
--let $assert_count = 2
--let $assert_text = IST receiver addr using tcp://\[::1\]
--let $assert_select = IST receiver addr using tcp://\[::1\]
--source include/assert_grep.inc

# The receiver expects IST
--let $assert_count = 2
--let $assert_text = , listening at: tcp://\[::1\]
--let $assert_select = , listening at: tcp://\[::1\]
--source include/assert_grep.inc