diff options
author | Igor Babaev <igor@askmonty.org> | 2013-04-03 23:50:14 -0700 |
---|---|---|
committer | Igor Babaev <igor@askmonty.org> | 2013-04-03 23:50:14 -0700 |
commit | 50d4d1ca188bea01d6f5196006c5bd89c0ae9a45 (patch) | |
tree | 28fdc086781a793a12b3642cd231628ea529d842 /mysql-test/t/selectivity.test | |
parent | d62ee4e970d36649d1a9248401122eb3a63fd011 (diff) | |
download | mariadb-git-50d4d1ca188bea01d6f5196006c5bd89c0ae9a45.tar.gz |
Fixed bug mdev-4367.
When calculating selectivity of conditions one should take into account
the cases when some tables to be joined are empty.
Diffstat (limited to 'mysql-test/t/selectivity.test')
-rw-r--r-- | mysql-test/t/selectivity.test | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/mysql-test/t/selectivity.test b/mysql-test/t/selectivity.test index 31ca9eefdbf..0614920dc13 100644 --- a/mysql-test/t/selectivity.test +++ b/mysql-test/t/selectivity.test @@ -336,4 +336,26 @@ set histogram_size=@save_histogram_size; set histogram_type=@save_histogram_type; set optimizer_use_condition_selectivity=@save_optimizer_use_condition_selectivity; +--echo # +--echo # Bug mdev-4367: join of a merged empty derived table +--echo # when optimizer_use_condition_selectivity=3 +--echo # + +SET optimizer_use_condition_selectivity=3; + +CREATE TABLE t1 (a varchar(1)) ENGINE=MyISAM; +INSERT INTO t1 VALUES ('j'),('k'); + +CREATE TABLE t2 (b varchar(1)) ENGINE=MyISAM; +INSERT INTO t2 VALUES ('x'),('y'); + +CREATE TABLE t3 (c varchar(1), KEY(c)) ENGINE=MyISAM; + +SELECT * FROM t1 STRAIGHT_JOIN (t2 JOIN t3 ON c = b AND b > 'z'); + +DROP TABLE t1,t2,t3; + +set optimizer_use_condition_selectivity=@save_optimizer_use_condition_selectivity; + + set use_stat_tables=@save_use_stat_tables; |