MCPcopy Create free account
hub / github.com/LadybugDB/ladybug / readUnflatColToFlatTuple

Method readUnflatColToFlatTuple

src/processor/result/factorized_table.cpp:686–702  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

684}
685
686void FactorizedTableIterator::readUnflatColToFlatTuple(ft_col_idx_t colIdx, uint8_t* valueBuffer,
687 FlatTuple& tuple) {
688 auto overflowValue =
689 (overflow_value_t*)(valueBuffer + factorizedTable.getTableSchema()->getColOffset(colIdx));
690 auto groupID = factorizedTable.getTableSchema()->getColumn(colIdx)->getGroupID();
691 auto tupleSizeInOverflowBuffer =
692 LogicalTypeUtils::getRowLayoutSize(tuple[colIdx].getDataType());
693 valueBuffer = overflowValue->value +
694 tupleSizeInOverflowBuffer * flatTuplePositionsInDataChunk[groupID].first;
695 auto isNull = factorizedTable.isOverflowColNull(
696 overflowValue->value + tupleSizeInOverflowBuffer * overflowValue->numElements,
697 flatTuplePositionsInDataChunk[groupID].first, colIdx);
698 tuple[colIdx].setNull(isNull);
699 if (!isNull) {
700 tuple[colIdx].copyFromRowLayout(valueBuffer);
701 }
702}
703
704void FactorizedTableIterator::readFlatColToFlatTuple(ft_col_idx_t colIdx, uint8_t* valueBuffer,
705 FlatTuple& tuple) {

Callers

nothing calls this directly

Calls 7

getGroupIDMethod · 0.80
getColumnMethod · 0.80
getDataTypeMethod · 0.80
isOverflowColNullMethod · 0.80
copyFromRowLayoutMethod · 0.80
getTableSchemaMethod · 0.45
setNullMethod · 0.45

Tested by

no test coverage detected