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

Method processScanOutput

src/storage/table/node_table.cpp:152–167  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

150}
151
152bool UncommittedIndexInserter::processScanOutput(main::ClientContext* context,
153 NodeGroupScanResult scanResult, const std::vector<ValueVector*>& scannedVectors) {
154 if (scanResult == NODE_GROUP_SCAN_EMPTY_RESULT) {
155 return false;
156 }
157 for (auto i = 0u; i < scanResult.numRows; i++) {
158 nodeIDVector.setValue(i, nodeID_t{startNodeOffset + i, table->getTableID()});
159 }
160 if (!insertState) {
161 insertState = index->initInsertState(context, isVisible);
162 }
163 index->commitInsert(transaction::Transaction::Get(*context), nodeIDVector, {scannedVectors},
164 *insertState);
165 startNodeOffset += scanResult.numRows;
166 return true;
167}
168
169std::unique_ptr<NodeTableScanState> CommittedIndexInserter::initScanState(
170 const Transaction* transaction, DataChunk& dataChunk) {

Callers 1

scanIndexColumnsMethod · 0.80

Calls 5

setValueMethod · 0.45
initInsertStateMethod · 0.45
commitInsertMethod · 0.45
sizeMethod · 0.45
discardPrimaryKeyMethod · 0.45

Tested by

no test coverage detected