EVOLUTION-MANAGER
Edit File: hcad_clustering2.result
SET DEFAULT_STORAGE_ENGINE='tokudb'; DROP TABLE IF EXISTS foo,bar; set session tokudb_disable_slow_alter=ON; create table foo (a varchar(10) NOT NULL, b varchar(10) NOT NULL, c varchar(10) NOT NULL, primary key (a), key (b) clustering=yes)engine=TokuDB; create table bar (a varchar(10) NOT NULL, b varchar(10) NOT NULL, c varchar(10) NOT NULL, primary key (a), key (b))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; include/diff_tables.inc [test.foo, test.bar] select * from foo; a b c d -1 -1 -1 20 1 10 100 20 2 20 200 20 select * from foo order by b desc; a b c d 2 20 200 20 1 10 100 20 -1 -1 -1 20 insert into foo values (3,30,300,3000); insert into bar values (3,30,300,3000); select * from foo; a b c d -1 -1 -1 20 1 10 100 20 2 20 200 20 3 30 300 3000 select * from foo order by b desc; a b c d 3 30 300 3000 2 20 200 20 1 10 100 20 -1 -1 -1 20 alter table foo drop column d; alter table bar drop column d; include/diff_tables.inc [test.foo, test.bar] select * from foo; a b c -1 -1 -1 1 10 100 2 20 200 3 30 300 select * from foo order by b desc; a b c 3 30 300 2 20 200 1 10 100 -1 -1 -1 insert into foo values (4,40,400); insert into bar values (4,40,400); select * from foo; a b c -1 -1 -1 1 10 100 2 20 200 3 30 300 4 40 400 select * from foo order by b desc; a b c 4 40 400 3 30 300 2 20 200 1 10 100 -1 -1 -1 alter table foo add column d varchar(10) default 20 first; alter table bar add column d varchar(10) default 20 first; include/diff_tables.inc [test.foo, test.bar] select * from foo; d a b c 20 -1 -1 -1 20 1 10 100 20 2 20 200 20 3 30 300 20 4 40 400 select * from foo order by b desc; d a b c 20 4 40 400 20 3 30 300 20 2 20 200 20 1 10 100 20 -1 -1 -1 insert into foo values (5,50,500,5000); insert into bar values (5,50,500,5000); select * from foo; d a b c 20 -1 -1 -1 20 1 10 100 20 2 20 200 20 3 30 300 20 4 40 400 5 50 500 5000 select * from foo order by b desc; d a b c 5 50 500 5000 20 4 40 400 20 3 30 300 20 2 20 200 20 1 10 100 20 -1 -1 -1 alter table foo drop column d; alter table bar drop column d; include/diff_tables.inc [test.foo, test.bar] select * from foo; a b c -1 -1 -1 1 10 100 2 20 200 3 30 300 4 40 400 50 500 5000 select * from foo order by b desc; a b c 50 500 5000 4 40 400 3 30 300 2 20 200 1 10 100 -1 -1 -1 insert into foo values (6,60,600); insert into bar values (6,60,600); select * from foo; a b c -1 -1 -1 1 10 100 2 20 200 3 30 300 4 40 400 50 500 5000 6 60 600 select * from foo order by b desc; a b c 6 60 600 50 500 5000 4 40 400 3 30 300 2 20 200 1 10 100 -1 -1 -1 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), key (b) clustering=yes)engine=TokuDB; create table bar (a varchar(10) NOT NULL, b varchar(10) NOT NULL, c varchar(10) NOT NULL, primary key (c), key (b))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; include/diff_tables.inc [test.foo, test.bar] select * from foo; a b c d -1 -1 -1 20 1 10 100 20 2 20 200 20 select * from foo order by b desc; a b c d 2 20 200 20 1 10 100 20 -1 -1 -1 20 insert into foo values (3,30,300,3000); insert into bar values (3,30,300,3000); select * from foo; a b c d -1 -1 -1 20 1 10 100 20 2 20 200 20 3 30 300 3000 select * from foo order by b desc; a b c d 3 30 300 3000 2 20 200 20 1 10 100 20 -1 -1 -1 20 alter table foo drop column d; alter table bar drop column d; include/diff_tables.inc [test.foo, test.bar] select * from foo; a b c -1 -1 -1 1 10 100 2 20 200 3 30 300 select * from foo order by b desc; a b c 3 30 300 2 20 200 1 10 100 -1 -1 -1 insert into foo values (4,40,400); insert into bar values (4,40,400); select * from foo; a b c -1 -1 -1 1 10 100 2 20 200 3 30 300 4 40 400 select * from foo order by b desc; a b c 4 40 400 3 30 300 2 20 200 1 10 100 -1 -1 -1 alter table foo add column d varchar(10) default 20 first; alter table bar add column d varchar(10) default 20 first; include/diff_tables.inc [test.foo, test.bar] select * from foo; d a b c 20 -1 -1 -1 20 1 10 100 20 2 20 200 20 3 30 300 20 4 40 400 select * from foo order by b desc; d a b c 20 4 40 400 20 3 30 300 20 2 20 200 20 1 10 100 20 -1 -1 -1 insert into foo values (5,50,500,5000); insert into bar values (5,50,500,5000); select * from foo; d a b c 20 -1 -1 -1 20 1 10 100 20 2 20 200 20 3 30 300 20 4 40 400 5 50 500 5000 select * from foo order by b desc; d a b c 5 50 500 5000 20 4 40 400 20 3 30 300 20 2 20 200 20 1 10 100 20 -1 -1 -1 alter table foo drop column d; alter table bar drop column d; include/diff_tables.inc [test.foo, test.bar] select * from foo; a b c -1 -1 -1 1 10 100 2 20 200 3 30 300 4 40 400 50 500 5000 select * from foo order by b desc; a b c 50 500 5000 4 40 400 3 30 300 2 20 200 1 10 100 -1 -1 -1 insert into foo values (6,60,600); insert into bar values (6,60,600); select * from foo; a b c -1 -1 -1 1 10 100 2 20 200 3 30 300 4 40 400 50 500 5000 6 60 600 select * from foo order by b desc; a b c 6 60 600 50 500 5000 4 40 400 3 30 300 2 20 200 1 10 100 -1 -1 -1 drop table foo; drop table bar;