summaryrefslogtreecommitdiff
path: root/sql/sql_derived.cc
diff options
context:
space:
mode:
authorVicențiu Ciorbaru <vicentiu@mariadb.org>2020-12-19 13:59:37 +0200
committerVicențiu Ciorbaru <vicentiu@mariadb.org>2021-04-21 14:08:58 +0300
commit13cf8f5e9afc7f64df79b41e2b004c28086371f4 (patch)
treeed6bfed9c8488ab688b57bafa42e7eaa68ae2168 /sql/sql_derived.cc
parentdd6ad3806856221f1af302e61ebd985905a00060 (diff)
downloadmariadb-git-13cf8f5e9afc7f64df79b41e2b004c28086371f4.tar.gz
cleanup: Refactor select_limit in select lex
Replace * select_lex::offset_limit * select_lex::select_limit * select_lex::explicit_limit with select_lex::Lex_select_limit The Lex_select_limit already existed with the same elements and was used in by the yacc parser. This commit is in preparation for FETCH FIRST implementation, as it simplifies a lot of the code. Additionally, the parser is simplified by making use of the stack to return Lex_select_limit objects. Cleanup of init_query() too. Removes explicit_limit= 0 as it's done a bit later in init_select() with limit_params.empty()
Diffstat (limited to 'sql/sql_derived.cc')
-rw-r--r--sql/sql_derived.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/sql_derived.cc b/sql/sql_derived.cc
index ecd5e7c21fe..60ca2370589 100644
--- a/sql/sql_derived.cc
+++ b/sql/sql_derived.cc
@@ -1448,7 +1448,8 @@ bool pushdown_cond_for_derived(THD *thd, Item *cond, TABLE_LIST *derived)
DBUG_RETURN(false);
/* Do not push conditions into unit with global ORDER BY ... LIMIT */
- if (unit->fake_select_lex && unit->fake_select_lex->explicit_limit)
+ if (unit->fake_select_lex &&
+ unit->fake_select_lex->limit_params.explicit_limit)
DBUG_RETURN(false);
/* Check whether any select of 'unit' allows condition pushdown */