summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/galera/t/galera_wsrep_log_conficts.test
blob: 3af08cbf637c12599ac33045435fac3bdbc42f94 (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
#
# Test --wsrep_log_conflicts=ON
#

--source include/galera_cluster.inc
--source include/have_innodb.inc

CREATE TABLE t1 (
	f1 VARCHAR(255) PRIMARY KEY
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO t1 VALUES ('abc');

--connection node_2
SELECT f1 = 'abc' FROM t1;

#
# Provoke a conflict
#

--connection node_1
SET AUTOCOMMIT=OFF;
START TRANSACTION;
UPDATE t1 SET f1 = 'klm';

--connection node_2
SET AUTOCOMMIT=OFF;
START TRANSACTION;
UPDATE t1 SET f1 = 'xyz';

--connection node_1
COMMIT;

--connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2
--connection node_2a
--let $wait_condition = SELECT f1 = 'klm' FROM t1;
--source include/wait_condition.inc

--connection node_2
--error ER_LOCK_DEADLOCK
COMMIT;

#
# We can not really check the log output very much because it is quite variable
#

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

--let $assert_text = cluster conflict due to high priority abort for threads
--let $assert_select = cluster conflict due to high priority abort for threads
--let $assert_match = cluster conflict due to high priority abort for threads
--source include/assert_grep.inc

DROP TABLE t1;