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-4188 Regression fixes for MCOL-641.
1. In TupleAggregateStep::configDeliveredRowGroup(), use jobInfo.projectionCols instead of jobInfo.nonConstCols for setting scale and precision if the source column is wide decimal. 2. Tighten rules for wide decimal processing. Specifically: a. Replace (precision > INT64MAXPRECISION) checks with (precision > INT64MAXPRECISION && precision <= INT128MAXPRECISION) b. At places where (colWidth == MAXDECIMALWIDTH) is not enough to determine if a column is wide decimal or not, also add a check on type being DECIMAL/UDECIMAL.
This commit is contained in:
@ -751,12 +751,12 @@ void TupleAggregateStep::configDeliveredRowGroup(const JobInfo& jobInfo)
|
||||
{
|
||||
retColCount = jobInfo.returnedColVec.size();
|
||||
|
||||
idbassert(jobInfo.returnedColVec.size() == jobInfo.nonConstCols.size());
|
||||
idbassert(jobInfo.returnedColVec.size() == jobInfo.projectionCols.size());
|
||||
|
||||
for (size_t i = 0; i < jobInfo.nonConstCols.size() &&
|
||||
for (size_t i = 0; i < jobInfo.projectionCols.size() &&
|
||||
scaleIter != scale.end(); i++)
|
||||
{
|
||||
const auto& colType = jobInfo.nonConstCols[i]->resultType();
|
||||
const auto& colType = jobInfo.projectionCols[i]->resultType();
|
||||
|
||||
if (colType.isWideDecimalType())
|
||||
{
|
||||
|
Reference in New Issue
Block a user