Skip to content

Commit

Permalink
Fix scan multi label from local storage; fix list column chunk lookup (
Browse files Browse the repository at this point in the history
  • Loading branch information
ray6080 committed Apr 21, 2024
1 parent 58b8222 commit 49ad7a7
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 1 deletion.
4 changes: 4 additions & 0 deletions src/storage/local_storage/local_node_table.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,10 @@ void LocalNodeNG::lookup(const common::ValueVector& nodeIDVector,
for (auto i = 0u; i < columnIDs.size(); i++) {
auto posInOutputVector =
outputVectors[i]->state->selVector->selectedPositions[offsetInVectorToLookup];
if (columnIDs[i] == INVALID_COLUMN_ID) {
outputVectors[i]->setNull(posInOutputVector, true);
continue;
}
getUpdateChunks(columnIDs[i])
.read(nodeOffset, 0 /*columnID*/, outputVectors[i], posInOutputVector);
}
Expand Down
4 changes: 4 additions & 0 deletions src/storage/local_storage/local_table.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,10 @@ bool LocalChunkedGroupCollection::read(offset_t offset, const std::vector<column
for (auto i = 0u; i < columnIDs.size(); i++) {
auto posInOutputVector =
outputVectors[i]->state->selVector->selectedPositions[offsetInOutputVector];
if (columnIDs[i] == INVALID_COLUMN_ID) {
outputVectors[i]->setNull(posInOutputVector, true);
continue;
}
readValueAtRowIdx(rowIdx, columnIDs[i], outputVectors[i], posInOutputVector);
}
return true;
Expand Down
2 changes: 1 addition & 1 deletion src/storage/store/list_column_chunk.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ void ListColumnChunk::lookup(offset_t offsetInChunk, ValueVector& output,
if (output.isNull(posInOutputVector)) {
return;
}
auto startOffset = offsetInChunk == 0 ? 0 : getValue<offset_t>(offsetInChunk - 1);
auto startOffset = getListStartOffset(offsetInChunk);
auto listSize = getListSize(offsetInChunk);
output.setValue<list_entry_t>(posInOutputVector, list_entry_t{startOffset, listSize});
auto dataVector = ListVector::getDataVector(&output);
Expand Down

0 comments on commit 49ad7a7

Please sign in to comment.