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

Method copyToNodeGroup

src/processor/operator/persistent/node_batch_insert.cpp:590–608  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

588}
589
590void NodeBatchInsert::copyToNodeGroup(transaction::Transaction* transaction,
591 MemoryManager* mm) const {
592 auto numAppendedTuples = 0ul;
593 const auto nodeLocalState = dynamic_cast_checked<NodeBatchInsertLocalState*>(localState.get());
594 const auto numTuplesToAppend = nodeLocalState->columnState->getSelVector().getSelSize();
595 while (numAppendedTuples < numTuplesToAppend) {
596 const auto numAppendedTuplesInNodeGroup =
597 nodeLocalState->chunkedGroup->append(nodeLocalState->columnVectors, numAppendedTuples,
598 numTuplesToAppend - numAppendedTuples);
599 numAppendedTuples += numAppendedTuplesInNodeGroup;
600 if (nodeLocalState->chunkedGroup->isFull()) {
601 writeAndResetNodeGroup(transaction, nodeLocalState->chunkedGroup,
602 nodeLocalState->localIndexBuilder, mm, *nodeLocalState->optimisticAllocator);
603 }
604 }
605 const auto nodeInfo = info->ptrCast<NodeBatchInsertInfo>();
606 nodeLocalState->stats.update(nodeLocalState->columnVectors, nodeInfo->outputDataColumns.size());
607 sharedState->incrementNumRows(numAppendedTuples);
608}
609
610NodeBatchInsertErrorHandler NodeBatchInsert::createErrorHandler(ExecutionContext* context) const {
611 const auto nodeSharedState =

Callers

nothing calls this directly

Calls 6

getSelSizeMethod · 0.80
isFullMethod · 0.80
getMethod · 0.45
appendMethod · 0.45
updateMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected