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-4519 RefColumn now uses the correct empty value iterating over the block values
This commit is contained in:
@ -707,10 +707,13 @@ int ColumnOp::fillColumn(const TxnID& txnid, Column& column, Column& refCol, voi
|
||||
config.initConfigCache();
|
||||
std::vector<uint16_t> rootList;
|
||||
config.getRootIdList( rootList );
|
||||
const uint8_t* emptyVal = getEmptyRowValue(column.colDataType,
|
||||
const uint8_t* emptyVal = getEmptyRowValue(column.colDataType,
|
||||
column.colWidth);
|
||||
// Set TypeHandler to get empty value ptr for the ref column
|
||||
findTypeHandler(refCol.colWidth, refCol.colDataType);
|
||||
const uint8_t* refEmptyVal = getEmptyRowValue(refCol.colDataType,
|
||||
refCol.colWidth);
|
||||
findTypeHandler(column.colWidth, column.colDataType);
|
||||
//find the dbroots which have rows for refrence column
|
||||
unsigned int i = 0, k = 0;
|
||||
|
||||
|
@ -711,11 +711,9 @@ int WriteEngineWrapper::fillColumn(const TxnID& txnid, const OID& dataOid,
|
||||
Convertor::convertColType(refColDataType, refColWidth, refColType, isToken);
|
||||
refColOp->setColParam(refCol, 0, refColOp->getCorrectRowWidth(refColDataType, refColWidth),
|
||||
refColDataType, refColType, (FID)refColOID, refCompressionType, dbRoot);
|
||||
refColOp->findTypeHandler(refColOp->getCorrectRowWidth(refColDataType,
|
||||
refColWidth),
|
||||
refColDataType);
|
||||
colOpNewCol->setColParam(newCol, 0, newDataWidth,
|
||||
colType.colDataType, newColType, (FID)dataOid, compressionType, dbRoot);
|
||||
// refColOp and colOpNewCol are the same ptr.
|
||||
colOpNewCol->findTypeHandler(newDataWidth, colType.colDataType);
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user