You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-07 03:22:57 +03:00
MCOL-840 Fix incompatible join on expression
This check was removed but is actually still required in some cases.
This commit is contained in:
@@ -569,6 +569,19 @@ void ExpressionStep::functionJoinCheck(SimpleFilter* sf, JobInfo& jobInfo)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((!compatibleColumnTypes(sf->lhs()->resultType(), sf->rhs()->resultType(), true)) &&
|
||||||
|
(fFunctionJoinInfo->fTableKey.size() == 2))
|
||||||
|
{
|
||||||
|
uint32_t t1 = fFunctionJoinInfo->fTableKey[0];
|
||||||
|
uint32_t t2 = fFunctionJoinInfo->fTableKey[1];
|
||||||
|
jobInfo.incompatibleJoinMap[t1] = t2;
|
||||||
|
jobInfo.incompatibleJoinMap[t2] = t1;
|
||||||
|
|
||||||
|
// not convertible
|
||||||
|
fFunctionJoinInfo.reset();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
SJSTEP sjstep;
|
SJSTEP sjstep;
|
||||||
ReturnedColumn* sfLhs = sf->lhs();
|
ReturnedColumn* sfLhs = sf->lhs();
|
||||||
ReturnedColumn* sfRhs = sf->rhs();
|
ReturnedColumn* sfRhs = sf->rhs();
|
||||||
|
Reference in New Issue
Block a user