1-- connect (con1,localhost,root,,)
2-- connect (con2,localhost,root,,)
3
4-- connection con1
5SET autocommit=0;
6SELECT * FROM t1 FOR UPDATE;
7-- if ($con1_extra_sql_present) {
8	-- eval $con1_extra_sql
9-- }
10
11-- connection con2
12SET autocommit=0;
13SELECT * FROM t2 FOR UPDATE;
14-- if ($con2_extra_sql_present) {
15	-- eval $con2_extra_sql
16-- }
17
18-- if ($con1_should_be_rolledback) {
19	-- connection con1
20	-- send
21	INSERT INTO t2 VALUES (0);
22
23	-- connection con2
24	INSERT INTO t1 VALUES (0);
25	ROLLBACK;
26
27	-- connection con1
28	-- error ER_LOCK_DEADLOCK
29	-- reap
30-- }
31# else
32-- if (!$con1_should_be_rolledback) {
33	-- connection con2
34	-- send
35	INSERT INTO t1 VALUES (0);
36
37	-- connection con1
38	INSERT INTO t2 VALUES (0);
39	ROLLBACK;
40
41	-- connection con2
42	-- error ER_LOCK_DEADLOCK
43	-- reap
44-- }
45
46-- connection default
47
48DELETE FROM t5_nontrans;
49
50-- disconnect con1
51-- disconnect con2
52