SET STORAGE_ENGINE = 'tokudb';
DROP TABLE IF EXISTS foo;
create table foo ( a int, b int, c int);
insert into foo values (1,1,1),(1,2,2),(1,3,3),(2,1,1),(2,2,2),(2,3,3),(3,1,1),(3,2,2),(3,3,3);
insert into foo values (4,4,1),(4,5,2),(4,6,3),(5,4,1),(5,5,2),(5,6,3),(6,4,1),(6,5,2),(6,6,3);
insert into foo select * from foo;
insert into foo select * from foo;
insert into foo select * from foo;
insert into foo select * from foo;
insert into foo select * from foo;
insert into foo select * from foo;
insert into foo select * from foo;
insert into foo select * from foo;
insert into foo select * from foo;
insert into foo select * from foo;
insert into foo select * from foo;
select count(*) from foo;
count(*)
36864
alter table foo add index (a), add index (b);
explain select * from foo where a=2 and b=2;
id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
1	SIMPLE	foo	index_merge	a,b	a,b	5,5	NULL	1024	Using intersect(a,b); Using where
alter table foo drop index a;
alter table foo add clustering index (a);
explain select * from foo where a=2 and b=2;
id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
1	SIMPLE	foo	range	b,a	a	5	NULL	6144	Using where
alter table foo drop index a;
alter table foo drop index b;
alter table foo add index (a);
alter table foo add clustering index(b);
explain select * from foo where a=2 and b=2;
id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
1	SIMPLE	foo	range	a,b	b	5	NULL	6144	Using where
alter table foo drop index a;
alter table foo drop index b;
alter table foo add clustering index (a), add clustering index (b);
explain select * from foo where a=2 and b=2;
id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
1	SIMPLE	foo	ref	a,b	a	5	const	6144	Using where
DROP TABLE foo;