1--source include/have_tokudb.inc
2--source include/have_debug_sync.inc
3
4--echo ### connection default
5
6skip MDEV-13442;
7CREATE TABLE t (a INT PRIMARY KEY, b INT) ENGINE=TokuDB;
8
9INSERT INTO t (a, b) VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5),
10                            (6, 6), (7, 7), (8, 8), (9, 9), (10, 10),
11                            (11, 11), (12, 12), (13, 13), (14, 14), (15, 15),
12                            (16, 16), (17, 17), (18, 18), (19, 19), (20, 20);
13
14--connect(con1, localhost, root)
15--connect(con2, localhost, root)
16
17--connection con1
18--echo ### connection con1
19SET DEBUG_SYNC= 'toku_range_lock_granted_immediately SIGNAL lock_granted WAIT_FOR lock_granted_continue';
20--send UPDATE t SET b=1 WHERE a BETWEEN 5 AND 10
21
22--connection default
23--echo ### connection default
24SET DEBUG_SYNC= 'now WAIT_FOR lock_granted';
25
26--connection con2
27--echo ### connection con2
28--let $con2_id= `SELECT CONNECTION_ID()`
29SET DEBUG_SYNC= 'toku_range_lock_before_wait SIGNAL lock_not_granted WAIT_FOR lock_not_granted_continue';
30SET DEBUG_SYNC= 'toku_range_lock_not_granted_after_wait SIGNAL lock_not_granted_after_wait';
31--send UPDATE t SET b=1 WHERE a BETWEEN 5 AND 10
32
33--connection default
34--echo ### connection default
35SET DEBUG_SYNC= 'now SIGNAL lock_not_granted_continue WAIT_FOR lock_not_granted';
36
37--disable_query_log
38--eval KILL QUERY $con2_id
39--enable_query_log
40--echo KILL QUERY con2_id
41SET DEBUG_SYNC= 'now SIGNAL lock_granted_continue WAIT_FOR lock_not_granted_after_wait';
42
43--connection con1
44--echo ### connection con1
45--echo ### reap
46--reap
47
48--connection con2
49--echo ### connection con2
50--echo ### reap
51--error ER_QUERY_INTERRUPTED
52--reap
53
54--connection default
55--echo ### connection default
56
57DROP TABLE t;
58