Loading mysql-test/r/select.result +11 −0 Original line number Diff line number Diff line Loading @@ -3337,6 +3337,17 @@ id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t2 const PRIMARY PRIMARY 4 const 1 Using index 1 SIMPLE t3 const PRIMARY PRIMARY 8 const,const 1 DROP TABLE t1,t2,t3; create table t1 (f1 int); insert into t1 values(1),(2); create table t2 (f2 int, f3 int, key(f2)); insert into t2 values(1,1),(2,2); create table t3 (f4 int not null); insert into t3 values (2),(2),(2); select f1,(select count(*) from t2,t3 where f2=f1 and f3=f4) as count from t1; f1 count 1 0 2 3 drop table t1,t2,t3; create table t1 (f1 int unique); create table t2 (f2 int unique); create table t3 (f3 int unique); Loading mysql-test/t/select.test +13 −0 Original line number Diff line number Diff line Loading @@ -2806,6 +2806,19 @@ EXPLAIN SELECT t2.key_a,foo DROP TABLE t1,t2,t3; # # Bug#15347 Wrong result of subselect when records cache and set functions # are involved # create table t1 (f1 int); insert into t1 values(1),(2); create table t2 (f2 int, f3 int, key(f2)); insert into t2 values(1,1),(2,2); create table t3 (f4 int not null); insert into t3 values (2),(2),(2); select f1,(select count(*) from t2,t3 where f2=f1 and f3=f4) as count from t1; drop table t1,t2,t3; # # Bug #15633 Evaluation of Item_equal for non-const table caused wrong # select result Loading sql/sql_select.cc +1 −0 Original line number Diff line number Diff line Loading @@ -9896,6 +9896,7 @@ flush_cached_records(JOIN *join,JOIN_TAB *join_tab,bool skip_last) int error; READ_RECORD *info; join_tab->table->null_row= 0; if (!join_tab->cache.records) return NESTED_LOOP_OK; /* Nothing to do */ if (skip_last) Loading Loading
mysql-test/r/select.result +11 −0 Original line number Diff line number Diff line Loading @@ -3337,6 +3337,17 @@ id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t2 const PRIMARY PRIMARY 4 const 1 Using index 1 SIMPLE t3 const PRIMARY PRIMARY 8 const,const 1 DROP TABLE t1,t2,t3; create table t1 (f1 int); insert into t1 values(1),(2); create table t2 (f2 int, f3 int, key(f2)); insert into t2 values(1,1),(2,2); create table t3 (f4 int not null); insert into t3 values (2),(2),(2); select f1,(select count(*) from t2,t3 where f2=f1 and f3=f4) as count from t1; f1 count 1 0 2 3 drop table t1,t2,t3; create table t1 (f1 int unique); create table t2 (f2 int unique); create table t3 (f3 int unique); Loading
mysql-test/t/select.test +13 −0 Original line number Diff line number Diff line Loading @@ -2806,6 +2806,19 @@ EXPLAIN SELECT t2.key_a,foo DROP TABLE t1,t2,t3; # # Bug#15347 Wrong result of subselect when records cache and set functions # are involved # create table t1 (f1 int); insert into t1 values(1),(2); create table t2 (f2 int, f3 int, key(f2)); insert into t2 values(1,1),(2,2); create table t3 (f4 int not null); insert into t3 values (2),(2),(2); select f1,(select count(*) from t2,t3 where f2=f1 and f3=f4) as count from t1; drop table t1,t2,t3; # # Bug #15633 Evaluation of Item_equal for non-const table caused wrong # select result Loading
sql/sql_select.cc +1 −0 Original line number Diff line number Diff line Loading @@ -9896,6 +9896,7 @@ flush_cached_records(JOIN *join,JOIN_TAB *join_tab,bool skip_last) int error; READ_RECORD *info; join_tab->table->null_row= 0; if (!join_tab->cache.records) return NESTED_LOOP_OK; /* Nothing to do */ if (skip_last) Loading