1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-29 08:21:15 +03:00

MCOL-4666 Empty set when using BIT OR and BIT AND functions in WHERE

This commit is contained in:
Alexander Barkov
2021-04-05 18:09:36 +04:00
parent a3db5bde36
commit a6a85d157d
11 changed files with 111 additions and 44 deletions

View File

@ -307,6 +307,7 @@ void FunctionColumn::unserialize(messageqcpp::ByteStream& b)
FuncExp* funcExp = FuncExp::instance();
fFunctor = funcExp->getFunctor(fFunctionName);
fFunctor->timeZone(fTimeZone);
fFunctor->fix(*this);
// @bug 3506. Special treatment for rand() function. reset the seed
Func_rand* rand = dynamic_cast<Func_rand*>(fFunctor);

View File

@ -309,15 +309,6 @@ public:
return fFunctor->getTimeIntVal(row, fFunctionParms, isNull, fOperationType);
}
bool fixIfNeeded() override
{
if (fFixed)
return false;
if (fFunctor->fix(*this))
return true;
fFixed = true;
return false;
}
void setFunctor(funcexp::Func* functor)
{
fFunctor = functor;

View File

@ -328,11 +328,6 @@ public:
return false;
}
virtual bool fixIfNeeded()
{
return false;
}
protected:
// return all flag set if the other column is outer join column (+)
bool fReturnAll;