diff options
author | Igor Babaev <igor@askmonty.org> | 2011-11-15 13:03:00 -0800 |
---|---|---|
committer | Igor Babaev <igor@askmonty.org> | 2011-11-15 13:03:00 -0800 |
commit | b4b7d941fea8b17bd0db2d30a74df6596101b4ed (patch) | |
tree | abccede71e3bb1a0c65d0e18f4462ac40bcb1097 /mysql-test/r/subselect3.result | |
parent | db0aed93482759844af7b39c9bf6e7fe141f28f6 (diff) | |
download | mariadb-git-b4b7d941fea8b17bd0db2d30a74df6596101b4ed.tar.gz |
Fixed LP bug #889750.
If the optimizer switch 'semijoin_with_cache' is set to 'off' then
join cache cannot be used to join inner tables of a semijoin.
Also fixed a bug in the function check_join_cache_usage() that led
to wrong output of the EXPLAIN commands for some test cases.
Diffstat (limited to 'mysql-test/r/subselect3.result')
-rw-r--r-- | mysql-test/r/subselect3.result | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/mysql-test/r/subselect3.result b/mysql-test/r/subselect3.result index 1279fc6b8f4..9ce3c8dfbe3 100644 --- a/mysql-test/r/subselect3.result +++ b/mysql-test/r/subselect3.result @@ -1,6 +1,6 @@ drop table if exists t0, t1, t2, t3, t4, t5, t11, t12, t21, t22; set @subselect3_tmp= @@optimizer_switch; -set optimizer_switch='semijoin=on,firstmatch=on,loosescan=on'; +set optimizer_switch='semijoin=on,firstmatch=on,loosescan=on,semijoin_with_cache=on'; create table t1 (oref int, grp int, ie int) ; insert into t1 (oref, grp, ie) values (1, 1, 1), @@ -345,8 +345,8 @@ dd NULL 0 bb NULL NULL select oref, a from t2 where a in (select ie from t1 where oref=t2.oref); oref a -ff 2 aa 1 +ff 2 select oref, a from t2 where a not in (select ie from t1 where oref=t2.oref); oref a bb 2 @@ -523,8 +523,8 @@ aa 1 1 1 dd 1 NULL 0 select oref, a, b from t2 where (a,b) in (select ie1,ie2 from t1 where oref=t2.oref); oref a b -ff 2 2 aa 1 1 +ff 2 2 select oref, a, b from t2 where (a,b) not in (select ie1,ie2 from t1 where oref=t2.oref); oref a b bb 2 1 @@ -1117,7 +1117,7 @@ set @@optimizer_switch=@save_optimizer_switch; explain select * from (select a from t0) X where a in (select a from t1); id select_type table type possible_keys key key_len ref rows Extra 1 PRIMARY <derived2> ALL NULL NULL NULL NULL 11 -1 PRIMARY t1 ALL NULL NULL NULL NULL 20 Using where; FirstMatch(<derived2>) +1 PRIMARY t1 ALL NULL NULL NULL NULL 20 Using where; FirstMatch(<derived2>); Using join buffer (flat, BNL join) 2 DERIVED t0 ALL NULL NULL NULL NULL 11 drop table t0, t1; create table t0 (a int); |