mySQL 5.0.11 sources for tomato
[tomato.git] / release / src / router / mysql / mysql-test / r / deadlock_innodb.result
blob7a4874d6aab33cd229b7386ba7d3645c432a5c9f
1 # Establish connection con1 (user=root)
2 # Establish connection con2 (user=root)
3 drop table if exists t1,t2;
4 # Switch to connection con1
5 create table t1 (id integer, x integer) engine = InnoDB;
6 insert into t1 values(0, 0);
7 set autocommit=0;
8 SELECT * from t1 where id = 0 FOR UPDATE;
9 id      x
10 0       0
11 # Switch to connection con2
12 set autocommit=0;
13 update t1 set x=2 where id = 0;
14 # Switch to connection con1
15 update t1 set x=1 where id = 0;
16 select * from t1;
17 id      x
18 0       1
19 commit;
20 # Switch to connection con2
21 commit;
22 # Switch to connection con1
23 select * from t1;
24 id      x
25 0       2
26 commit;
27 drop table t1;
28 # Switch to connection con1
29 create table t1 (id integer, x integer) engine = InnoDB;
30 create table t2 (b integer, a integer) engine = InnoDB;
31 insert into t1 values(0, 0), (300, 300);
32 insert into t2 values(0, 10), (1, 20), (2, 30);
33 commit;
34 set autocommit=0;
35 select * from t2;
36 b       a
37 0       10
38 1       20
39 2       30
40 update t2 set a=100 where b=(SELECT x from t1 where id = b FOR UPDATE);
41 select * from t2;
42 b       a
43 0       100
44 1       20
45 2       30
46 select * from t1;
47 id      x
48 0       0
49 300     300
50 # Switch to connection con2
51 set autocommit=0;
52 update t1 set x=2 where id = 0;
53 # Switch to connection con1
54 update t1 set x=1 where id = 0;
55 select * from t1;
56 id      x
57 0       1
58 300     300
59 commit;
60 # Switch to connection con2
61 commit;
62 # Switch to connection con1
63 select * from t1;
64 id      x
65 0       2
66 300     300
67 commit;
68 drop table t1, t2;
69 create table t1 (id integer, x integer) engine = InnoDB;
70 create table t2 (b integer, a integer) engine = InnoDB;
71 insert into t1 values(0, 0), (300, 300);
72 insert into t2 values(0, 0), (1, 20), (2, 30);
73 commit;
74 # Switch to connection con1
75 select a,b from t2 UNION SELECT id, x from t1 FOR UPDATE;
76 a       b
77 0       0
78 20      1
79 30      2
80 300     300
81 select * from t2;
82 b       a
83 0       0
84 1       20
85 2       30
86 select * from t1;
87 id      x
88 0       0
89 300     300
90 # Switch to connection con2
91 update t2 set a=2 where b = 0;
92 select * from t2;
93 b       a
94 0       2
95 1       20
96 2       30
97 update t1 set x=2 where id = 0;
98 # Switch to connection con1
99 update t1 set x=1 where id = 0;
100 select * from t1;
101 id      x
102 0       1
103 300     300
104 commit;
105 # Switch to connection con2
106 commit;
107 # Switch to connection con1
108 select * from t1;
109 id      x
110 0       2
111 300     300
112 commit;
113 # Switch to connection default + disconnect con1 and con2
114 drop table t1, t2;
115 End of 4.1 tests
116 set storage_engine=innodb;
117 drop table if exists a;
118 drop table if exists A;
119 create table A (c int);
120 insert into A (c) values (0);
121 create table a as select * from A;
122 drop table A;
123 drop table if exists a;
124 set storage_engine=default;
125 End of 5.0 tests.