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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
--source include/have_tokudb.inc
SET DEFAULT_STORAGE_ENGINE='tokudb';
--disable_warnings
DROP TABLE IF EXISTS foo,bar;
--enable_warnings
set session tokudb_disable_slow_alter=ON;
let $diff_tables= test.foo, test.bar;
create table foo (a varchar(10) NOT NULL, b varchar(10) NOT NULL, c varchar(10) NOT NULL, primary key (a))engine=TokuDB;
create table bar like foo;
alter table bar engine=MyISAM;
insert into foo values (1,10,100),(-1,-1,-1),(2,20,200);
insert into bar select * from foo;
alter table foo add column d varchar(10) default 20;
alter table bar add column d varchar(10) default 20;
source include/diff_tables.inc;
select * from foo;
insert into foo values (3,30,300,3000);
insert into bar values (3,30,300,3000);
select * from foo;
alter table foo drop column d;
alter table bar drop column d;
source include/diff_tables.inc;
select * from foo;
insert into foo values (4,40,400);
insert into bar values (4,40,400);
select * from foo;
alter table foo add column d varchar(10) default 20 first;
alter table bar add column d varchar(10) default 20 first;
source include/diff_tables.inc;
select * from foo;
insert into foo values (5,50,500,5000);
insert into bar values (5,50,500,5000);
select * from foo;
alter table foo drop column d;
alter table bar drop column d;
source include/diff_tables.inc;
select * from foo;
insert into foo values (6,60,600);
insert into bar values (6,60,600);
select * from foo;
drop table foo;
drop table bar;
create table foo (a varchar(10) NOT NULL, b varchar(10) NOT NULL, c varchar(10) NOT NULL, primary key (c))engine=TokuDB;
create table bar like foo;
alter table bar engine=MyISAM;
insert into foo values (1,10,100),(-1,-1,-1),(2,20,200);
insert into bar select * from foo;
alter table foo add column d varchar(10) default 20;
alter table bar add column d varchar(10) default 20;
source include/diff_tables.inc;
select * from foo;
insert into foo values (3,30,300,3000);
insert into bar values (3,30,300,3000);
select * from foo;
alter table foo drop column d;
alter table bar drop column d;
source include/diff_tables.inc;
select * from foo;
insert into foo values (4,40,400);
insert into bar values (4,40,400);
select * from foo;
alter table foo add column d varchar(10) default 20 first;
alter table bar add column d varchar(10) default 20 first;
source include/diff_tables.inc;
select * from foo;
insert into foo values (5,50,500,5000);
insert into bar values (5,50,500,5000);
select * from foo;
alter table foo drop column d;
alter table bar drop column d;
source include/diff_tables.inc;
select * from foo;
insert into foo values (6,60,600);
insert into bar values (6,60,600);
select * from foo;
drop table foo;
drop table bar;
|