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

Merge branch 'develop-1.2' into develop-merge-up-20190729

This commit is contained in:
Andrew Hutchings
2019-07-29 12:19:26 +01:00
36 changed files with 366 additions and 175 deletions

View File

@ -566,17 +566,11 @@ assignment_commalist:
assignment:
column COMPARISON scalar_exp
{
$$ = new ColumnAssignment();
$$->fColumn = $1;
$$->fOperator = $2;
$$->fScalarExpression = $3;
$$ = new ColumnAssignment($1, $2, $3);
}
| column COMPARISON NULLX
{
$$ = new ColumnAssignment();
$$->fColumn = $1;
$$->fOperator = $2;
$$->fScalarExpression = $3;
$$ = new ColumnAssignment($1, $2, $3);
}
;

View File

@ -409,6 +409,14 @@ public:
class ColumnAssignment
{
public:
explicit ColumnAssignment(
std::string const& column,
std::string const& op = "=",
std::string const& expr = "") :
fColumn(column), fOperator(op), fScalarExpression(expr),
fFromCol(false), fFuncScale(0), fIsNull(false)
{};
/** @brief dump to stdout
*/
std::ostream& put(std::ostream& os) const;
@ -423,6 +431,7 @@ public:
std::string fScalarExpression;
bool fFromCol;
uint32_t fFuncScale;
bool fIsNull;
};
/** @brief Stores a value list or a query specification

View File

@ -259,7 +259,8 @@ void UpdateDMLPackage::buildUpdateFromMysqlBuffer(UpdateSqlStatement& updateStm
while (iter != updateStmt.fColAssignmentListPtr->end())
{
ColumnAssignment* colaPtr = *iter;
DMLColumn* colPtr = new DMLColumn(colaPtr->fColumn, colaPtr->fScalarExpression, colaPtr->fFromCol, colaPtr->fFuncScale);
DMLColumn* colPtr = new DMLColumn(colaPtr->fColumn, colaPtr->fScalarExpression, colaPtr->fFromCol, colaPtr->fFuncScale,
colaPtr->fIsNull);
rowPtr->get_ColumnList().push_back(colPtr);
++iter;