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-641 Refactored MultiplicationOverflowCheck but it still has flaws.
Introduced fDecimalOverflowCheck to enable/disable overflow check. Add support into a FunctionColumn. Low level scanning crashes on medium sized data sets.
This commit is contained in:
@ -32,6 +32,7 @@
|
||||
#include "objectreader.h"
|
||||
#include "joblisttypes.h"
|
||||
#include "rowgroup.h"
|
||||
#include "mcs_decimal.h"
|
||||
|
||||
/**
|
||||
* Namespace
|
||||
@ -217,7 +218,7 @@ inline IDB_Decimal SimpleColumn_INT<len>::getDecimalVal(rowgroup::Row& row, bool
|
||||
isNull = true;
|
||||
|
||||
fResult.decimalVal.value = (int64_t)row.getIntField<len>(fInputIndex);
|
||||
fResult.decimalVal.precision = 65;
|
||||
fResult.decimalVal.precision = datatypes::INT64MAXPRECISION;
|
||||
fResult.decimalVal.scale = 0;
|
||||
return fResult.decimalVal;
|
||||
}
|
||||
@ -242,8 +243,6 @@ void SimpleColumn_INT<len>::serialize(messageqcpp::ByteStream& b) const
|
||||
case 8:
|
||||
b << (ObjectReader::id_t) ObjectReader::SIMPLECOLUMN_INT8;
|
||||
break;
|
||||
case 16:
|
||||
std::cout << __FILE__<< ":" << __LINE__ << " Fix for 16 Bytes ?" << std::endl;
|
||||
}
|
||||
|
||||
SimpleColumn::serialize(b);
|
||||
@ -269,8 +268,6 @@ void SimpleColumn_INT<len>::unserialize(messageqcpp::ByteStream& b)
|
||||
case 8:
|
||||
ObjectReader::checkType(b, ObjectReader::SIMPLECOLUMN_INT8);
|
||||
break;
|
||||
case 16:
|
||||
std::cout << __FILE__<< ":" << __LINE__ << " Fix for 16 Bytes ?" << std::endl;
|
||||
}
|
||||
|
||||
SimpleColumn::unserialize(b);
|
||||
|
Reference in New Issue
Block a user