--source include/have_innodb.inc ######################################################################## # Bug #857590: Fast index creation does not update index statistics ######################################################################## CREATE TABLE t1( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, a CHAR(1) NOT NULL, b CHAR(36) NOT NULL) ENGINE=InnoDB; INSERT INTO t1(a,b) VALUES ('a','b'); INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1(a,b) SELECT a,b FROM t1; INSERT INTO t1(a,b) SELECT a,b FROM t1; # Check that fast index creation is used --enable_info ALTER TABLE t1 ADD KEY (a); --disable_info # The default (wrong) plan due to bogus statistics --vertical_results EXPLAIN SELECT COUNT(*) FROM t1, t1 t2 WHERE t1.a = t2.a AND t1.b = t2.b; --horizontal_results ALTER TABLE t1 DROP KEY a; SET expand_fast_index_creation = 1; SELECT @@expand_fast_index_creation; # Check that stats are updated with the option enabled --enable_info ALTER TABLE t1 ADD KEY (a); --disable_info --vertical_results EXPLAIN SELECT COUNT(*) FROM t1, t1 t2 WHERE t1.a = t2.a AND t1.b = t2.b; --horizontal_results SET expand_fast_index_creation = 0; DROP TABLE t1;