1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

MDEV-30828 Prevent pushing down unions with incorrect ORDER BY

Fake_select_lex->join was prepared at the unit execution stage so
the validation of fake_select_lex before the unit pushdown
was incomplete. That caused pushing down of statements having
an incorrect ORDER BY clause.
This commit moves preparation of the fake_select_lex->join to the unit
prepare() method, before initializing of the pushdown handler,
so incorrect clauses error out before being pushed down
This commit is contained in:
Oleg Smirnov
2023-04-03 18:05:44 +07:00
parent 8290a46d50
commit d6c6102cad
7 changed files with 238 additions and 148 deletions

View File

@ -1596,6 +1596,8 @@ public:
*/
bool impossible_where;
bool prepared;
/*
All fields used in the query processing.