mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-7245: Incorrect display of subquery cache in union.result
- Do set nest_level and nest_level_base for fake_select_lex objects.
This commit is contained in:
@ -1617,7 +1617,7 @@ NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL NULL Using filesort
|
|||||||
3 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 2 100.00 Using where
|
3 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 2 100.00 Using where
|
||||||
Warnings:
|
Warnings:
|
||||||
Note 1276 Field or reference 'a' of SELECT #3 was resolved in SELECT #-1
|
Note 1276 Field or reference 'a' of SELECT #3 was resolved in SELECT #-1
|
||||||
Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` union select `test`.`t1`.`a` AS `a` from `test`.`t1` order by <expr_cache><>((select `a` from `test`.`t2` where (`test`.`t2`.`b` = 12)))
|
Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` union select `test`.`t1`.`a` AS `a` from `test`.`t1` order by <expr_cache><`a`>((select `a` from `test`.`t2` where (`test`.`t2`.`b` = 12)))
|
||||||
# Should not crash
|
# Should not crash
|
||||||
SELECT * FROM t1 UNION SELECT * FROM t1
|
SELECT * FROM t1 UNION SELECT * FROM t1
|
||||||
ORDER BY (SELECT a FROM t2 WHERE b = 12);
|
ORDER BY (SELECT a FROM t2 WHERE b = 12);
|
||||||
|
@ -7757,6 +7757,9 @@ bool st_select_lex_unit::add_fake_select_lex(THD *thd_arg)
|
|||||||
fake_select_lex->context.resolve_in_select_list= TRUE;
|
fake_select_lex->context.resolve_in_select_list= TRUE;
|
||||||
fake_select_lex->context.select_lex= fake_select_lex;
|
fake_select_lex->context.select_lex= fake_select_lex;
|
||||||
|
|
||||||
|
fake_select_lex->nest_level_base= first_select()->nest_level_base;
|
||||||
|
fake_select_lex->nest_level=first_select()->nest_level;
|
||||||
|
|
||||||
if (!is_union())
|
if (!is_union())
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user