You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-01 06:46:55 +03:00
MCOL-1822 interim checkin
This commit is contained in:
@ -1297,8 +1297,8 @@ void RowAggregation::doMinMax(const Row& rowIn, int64_t colIn, int64_t colOut, i
|
||||
|
||||
case execplan::CalpontSystemCatalog::LONGDOUBLE:
|
||||
{
|
||||
long double valIn = rowIn.getDoubleField(colIn);
|
||||
long double valOut = fRow.getDoubleField(colOut);
|
||||
long double valIn = rowIn.getLongDoubleField(colIn);
|
||||
long double valOut = fRow.getLongDoubleField(colOut);
|
||||
updateLongDoubleMinMax(valIn, valOut, colOut, funcType);
|
||||
break;
|
||||
}
|
||||
@ -3186,6 +3186,10 @@ void RowAggregationUM::doNullConstantAggregate(const ConstantAggData& aggData, u
|
||||
{
|
||||
case ROWAGG_MIN:
|
||||
case ROWAGG_MAX:
|
||||
case ROWAGG_AVG:
|
||||
case ROWAGG_SUM:
|
||||
case ROWAGG_DISTINCT_AVG:
|
||||
case ROWAGG_DISTINCT_SUM:
|
||||
case ROWAGG_STATS:
|
||||
{
|
||||
switch (colDataType)
|
||||
@ -3258,15 +3262,6 @@ void RowAggregationUM::doNullConstantAggregate(const ConstantAggData& aggData, u
|
||||
}
|
||||
break;
|
||||
|
||||
case ROWAGG_AVG:
|
||||
case ROWAGG_SUM:
|
||||
case ROWAGG_DISTINCT_AVG:
|
||||
case ROWAGG_DISTINCT_SUM:
|
||||
{
|
||||
fRow.setLongDoubleField(getLongDoubleNullValue(), colOut);
|
||||
}
|
||||
break;
|
||||
|
||||
case ROWAGG_COUNT_COL_NAME:
|
||||
case ROWAGG_COUNT_DISTINCT_COL_NAME:
|
||||
{
|
||||
|
@ -1036,6 +1036,11 @@ inline void Row::setFloatField(float val, uint32_t colIndex)
|
||||
|
||||
inline void Row::setLongDoubleField(long double val, uint32_t colIndex)
|
||||
{
|
||||
if (sizeof(long double) == 16)
|
||||
{
|
||||
// zero out the unused portion as there may be garbage there.
|
||||
*((uint64_t*)&val+1) &= 0x000000000000FFFFULL;
|
||||
}
|
||||
*((long double*) &data[offsets[colIndex]]) = val;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user