You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-30 19:23:07 +03:00
MCOL-2178 CS now sets optimizer flags like it did in the fork-era.
This happens in external_lock() whilst locking the table. Fixes LIMIT=1 optimization for EXISTS_SUBS subqueries. external_lock() contains if condition that gives false positive for SH + pushed conditions. external_lock() now resets in_subquery_conversion_threshold variable that governs IN_INTO_SUBQUERY optimization for queries run in table mode. external_lock() now purges dynamicall allocated condInfo for SH and DH execution path. Commented out UNION check b/c if condition gives false positives and silently enables table mode execution for queries w/o UNION.
This commit is contained in:
@ -253,7 +253,7 @@ execplan::ParseTree* ScalarSub::buildParseTree(PredicateOperator* op)
|
||||
gwi.tbList.insert(gwi.tbList.begin(), fGwip.tbList.begin(), fGwip.tbList.end());
|
||||
gwi.derivedTbList.insert(gwi.derivedTbList.begin(), fGwip.derivedTbList.begin(), fGwip.derivedTbList.end());
|
||||
|
||||
if (getSelectPlan(gwi, *(fSub->get_select_lex()), csep) != 0)
|
||||
if (getSelectPlan(gwi, *(fSub->get_select_lex()), csep, false, true) != 0)
|
||||
{
|
||||
//@todo more in error handling
|
||||
if (!gwi.fatalParseError)
|
||||
|
Reference in New Issue
Block a user