Commit 6da897e0 authored by unknown's avatar unknown

fixed uncachable union (bug #150)


mysql-test/r/union.result:
  sect of uncachable union
mysql-test/t/union.test:
  sect of uncachable union
sql/sql_lex.h:
  fixed uncachable union
parent 13d28097
......@@ -269,3 +269,7 @@ id select_type table type possible_keys key key_len ref rows Extra
drop table t1,t2;
(select 1) union (select 2) order by 0;
Unknown column '0' in 'order clause'
SELECT @a:=1 UNION SELECT @a:=@a+1;
@a:=1
1
2
......@@ -144,3 +144,5 @@ explain (select * from t1 where a=1) union (select * from t1 where b=1);
drop table t1,t2;
--error 1054
(select 1) union (select 2) order by 0;
SELECT @a:=1 UNION SELECT @a:=@a+1;
......@@ -501,11 +501,13 @@ typedef struct st_lex
but we should merk all subselects as uncacheable from current till
most upper
*/
for (SELECT_LEX_NODE *sl= current_select;
sl != &select_lex;
sl= sl->outer_select())
SELECT_LEX_NODE *sl;
SELECT_LEX_UNIT *un;
for (sl= current_select, un= sl->master_unit();
un != &unit;
sl= sl->outer_select(), un= sl->master_unit())
{
sl->uncacheable = sl->master_unit()->uncacheable= 1;
sl->uncacheable = un->uncacheable= 1;
}
}
} LEX;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment