1==== Initialization ====
2include/master-slave.inc
3[connection master]
4---- setup master ----
5CREATE TABLE myisam_innodb (a INT) ENGINE=MYISAM;
6CREATE TABLE innodb_myisam (a INT) ENGINE=INNODB;
7CREATE TABLE myisam_ndb    (a INT) ENGINE=MYISAM;
8CREATE TABLE ndb_myisam    (a INT) ENGINE=NDB;
9CREATE TABLE innodb_ndb    (a INT) ENGINE=INNODB;
10CREATE TABLE ndb_innodb    (a INT) ENGINE=NDB;
11SHOW CREATE TABLE myisam_innodb;
12Table	Create Table
13myisam_innodb	CREATE TABLE `myisam_innodb` (
14  `a` int(11) DEFAULT NULL
15) ENGINE=MyISAM DEFAULT CHARSET=latin1
16SHOW CREATE TABLE innodb_myisam;
17Table	Create Table
18innodb_myisam	CREATE TABLE `innodb_myisam` (
19  `a` int(11) DEFAULT NULL
20) ENGINE=InnoDB DEFAULT CHARSET=latin1
21SHOW CREATE TABLE myisam_ndb;
22Table	Create Table
23myisam_ndb	CREATE TABLE `myisam_ndb` (
24  `a` int(11) DEFAULT NULL
25) ENGINE=MyISAM DEFAULT CHARSET=latin1
26SHOW CREATE TABLE ndb_myisam;
27Table	Create Table
28ndb_myisam	CREATE TABLE `ndb_myisam` (
29  `a` int(11) DEFAULT NULL
30) ENGINE=ndbcluster DEFAULT CHARSET=latin1
31SHOW CREATE TABLE innodb_ndb;
32Table	Create Table
33innodb_ndb	CREATE TABLE `innodb_ndb` (
34  `a` int(11) DEFAULT NULL
35) ENGINE=InnoDB DEFAULT CHARSET=latin1
36SHOW CREATE TABLE ndb_innodb;
37Table	Create Table
38ndb_innodb	CREATE TABLE `ndb_innodb` (
39  `a` int(11) DEFAULT NULL
40) ENGINE=ndbcluster DEFAULT CHARSET=latin1
41---- setup slave with different engines ----
42DROP TABLE myisam_innodb, innodb_myisam;
43DROP TABLE myisam_ndb, ndb_myisam;
44DROP TABLE innodb_ndb, ndb_innodb;
45CREATE TABLE myisam_innodb (a INT) ENGINE=INNODB;
46CREATE TABLE innodb_myisam (a INT) ENGINE=MYISAM;
47CREATE TABLE myisam_ndb    (a INT) ENGINE=NDB;
48CREATE TABLE ndb_myisam    (a INT) ENGINE=MYISAM;
49CREATE TABLE innodb_ndb    (a INT) ENGINE=NDB;
50CREATE TABLE ndb_innodb    (a INT) ENGINE=INNODB;
51SHOW CREATE TABLE myisam_innodb;
52Table	Create Table
53myisam_innodb	CREATE TABLE `myisam_innodb` (
54  `a` int(11) DEFAULT NULL
55) ENGINE=InnoDB DEFAULT CHARSET=latin1
56SHOW CREATE TABLE innodb_myisam;
57Table	Create Table
58innodb_myisam	CREATE TABLE `innodb_myisam` (
59  `a` int(11) DEFAULT NULL
60) ENGINE=MyISAM DEFAULT CHARSET=latin1
61SHOW CREATE TABLE myisam_ndb;
62Table	Create Table
63myisam_ndb	CREATE TABLE `myisam_ndb` (
64  `a` int(11) DEFAULT NULL
65) ENGINE=ndbcluster DEFAULT CHARSET=latin1
66SHOW CREATE TABLE ndb_myisam;
67Table	Create Table
68ndb_myisam	CREATE TABLE `ndb_myisam` (
69  `a` int(11) DEFAULT NULL
70) ENGINE=MyISAM DEFAULT CHARSET=latin1
71SHOW CREATE TABLE innodb_ndb;
72Table	Create Table
73innodb_ndb	CREATE TABLE `innodb_ndb` (
74  `a` int(11) DEFAULT NULL
75) ENGINE=ndbcluster DEFAULT CHARSET=latin1
76SHOW CREATE TABLE ndb_innodb;
77Table	Create Table
78ndb_innodb	CREATE TABLE `ndb_innodb` (
79  `a` int(11) DEFAULT NULL
80) ENGINE=InnoDB DEFAULT CHARSET=latin1
81==== AUTOCOMMIT=0, transactions ====
82---- COMMIT ----
83SET AUTOCOMMIT = 0;
84BEGIN;
85INSERT INTO myisam_innodb VALUES (1);
86INSERT INTO myisam_innodb VALUES (2);
87COMMIT;
88BEGIN;
89INSERT INTO innodb_myisam VALUES (3);
90INSERT INTO innodb_myisam VALUES (4);
91COMMIT;
92BEGIN;
93INSERT INTO myisam_ndb VALUES (5);
94INSERT INTO myisam_ndb VALUES (6);
95COMMIT;
96BEGIN;
97INSERT INTO ndb_myisam VALUES (7);
98INSERT INTO ndb_myisam VALUES (8);
99COMMIT;
100BEGIN;
101INSERT INTO ndb_innodb VALUES (9);
102INSERT INTO ndb_innodb VALUES (10);
103COMMIT;
104BEGIN;
105INSERT INTO innodb_ndb VALUES (11);
106INSERT INTO innodb_ndb VALUES (12);
107COMMIT;
108---- ROLLBACK ----
109BEGIN;
110INSERT INTO myisam_innodb VALUES (13);
111INSERT INTO myisam_innodb VALUES (14);
112ROLLBACK;
113Warnings:
114Warning	1196	Some non-transactional changed tables couldn't be rolled back
115BEGIN;
116INSERT INTO innodb_myisam VALUES (15);
117INSERT INTO innodb_myisam VALUES (16);
118ROLLBACK;
119BEGIN;
120INSERT INTO myisam_ndb VALUES (17);
121INSERT INTO myisam_ndb VALUES (18);
122ROLLBACK;
123Warnings:
124Warning	1196	Some non-transactional changed tables couldn't be rolled back
125BEGIN;
126INSERT INTO ndb_myisam VALUES (19);
127INSERT INTO ndb_myisam VALUES (20);
128ROLLBACK;
129BEGIN;
130INSERT INTO ndb_innodb VALUES (21);
131INSERT INTO ndb_innodb VALUES (22);
132ROLLBACK;
133BEGIN;
134INSERT INTO innodb_ndb VALUES (23);
135INSERT INTO innodb_ndb VALUES (24);
136ROLLBACK;
137==== AUTOCOMMIT=1, transactions ====
138---- COMMIT ----
139SET AUTOCOMMIT = 1;
140BEGIN;
141INSERT INTO myisam_innodb VALUES (25);
142INSERT INTO myisam_innodb VALUES (26);
143COMMIT;
144BEGIN;
145INSERT INTO innodb_myisam VALUES (27);
146INSERT INTO innodb_myisam VALUES (28);
147COMMIT;
148BEGIN;
149INSERT INTO myisam_ndb VALUES (29);
150INSERT INTO myisam_ndb VALUES (30);
151COMMIT;
152BEGIN;
153INSERT INTO ndb_myisam VALUES (31);
154INSERT INTO ndb_myisam VALUES (32);
155COMMIT;
156BEGIN;
157INSERT INTO ndb_innodb VALUES (33);
158INSERT INTO ndb_innodb VALUES (34);
159COMMIT;
160BEGIN;
161INSERT INTO innodb_ndb VALUES (35);
162INSERT INTO innodb_ndb VALUES (36);
163COMMIT;
164---- ROLLBACK ----
165BEGIN;
166INSERT INTO myisam_innodb VALUES (37);
167INSERT INTO myisam_innodb VALUES (38);
168ROLLBACK;
169Warnings:
170Warning	1196	Some non-transactional changed tables couldn't be rolled back
171BEGIN;
172INSERT INTO innodb_myisam VALUES (39);
173INSERT INTO innodb_myisam VALUES (40);
174ROLLBACK;
175BEGIN;
176INSERT INTO myisam_ndb VALUES (41);
177INSERT INTO myisam_ndb VALUES (42);
178ROLLBACK;
179Warnings:
180Warning	1196	Some non-transactional changed tables couldn't be rolled back
181BEGIN;
182INSERT INTO ndb_myisam VALUES (43);
183INSERT INTO ndb_myisam VALUES (44);
184ROLLBACK;
185BEGIN;
186INSERT INTO ndb_innodb VALUES (45);
187INSERT INTO ndb_innodb VALUES (46);
188ROLLBACK;
189BEGIN;
190INSERT INTO innodb_ndb VALUES (47);
191INSERT INTO innodb_ndb VALUES (48);
192ROLLBACK;
193==== AUTOCOMMIT=1, single statements ====
194INSERT INTO myisam_innodb VALUES (49);
195INSERT INTO myisam_innodb VALUES (50);
196INSERT INTO innodb_myisam VALUES (51);
197INSERT INTO innodb_myisam VALUES (52);
198INSERT INTO myisam_ndb VALUES (53);
199INSERT INTO myisam_ndb VALUES (54);
200INSERT INTO ndb_myisam VALUES (55);
201INSERT INTO ndb_myisam VALUES (56);
202INSERT INTO ndb_innodb VALUES (57);
203INSERT INTO ndb_innodb VALUES (58);
204INSERT INTO innodb_ndb VALUES (59);
205INSERT INTO innodb_ndb VALUES (60);
206==== AUTOCOMMIT=0, single statements, myisam on master ====
207SET AUTOCOMMIT = 0;
208INSERT INTO myisam_innodb VALUES (61);
209INSERT INTO myisam_innodb VALUES (62);
210INSERT INTO myisam_ndb VALUES (63);
211INSERT INTO myisam_ndb VALUES (64);
212==== Show results ====
213SELECT * FROM myisam_innodb ORDER BY a;
214a
2151
2162
21713
21814
21925
22026
22137
22238
22349
22450
22561
22662
227SELECT * FROM innodb_myisam ORDER BY a;
228a
2293
2304
23127
23228
23351
23452
235SELECT * FROM myisam_ndb    ORDER BY a;
236a
2375
2386
23917
24018
24129
24230
24341
24442
24553
24654
24763
24864
249SELECT * FROM ndb_myisam    ORDER BY a;
250a
2517
2528
25331
25432
25555
25656
257SELECT * FROM innodb_ndb    ORDER BY a;
258a
25911
26012
26135
26236
26359
26460
265SELECT * FROM ndb_innodb    ORDER BY a;
266a
2679
26810
26933
27034
27157
27258
273include/diff_tables.inc [master:myisam_innodb, slave:myisam_innodb]
274include/diff_tables.inc [master:innodb_myisam, slave:innodb_myisam]
275include/diff_tables.inc [master:myisam_ndb, slave:myisam_ndb]
276include/diff_tables.inc [master:ndb_myisam, slave:ndb_myisam]
277include/diff_tables.inc [master:innodb_ndb, slave:innodb_ndb]
278include/diff_tables.inc [master:ndb_innodb, slave:ndb_innodb]
279==== Clean up ====
280drop table myisam_innodb, innodb_myisam;
281drop table myisam_ndb, ndb_myisam;
282drop table innodb_ndb, ndb_innodb;
283include/rpl_end.inc
284