This is an automated email from the ASF dual-hosted git repository. mrhhsg pushed a commit to branch cherry-pick-nested_column_prune_4.0 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 8009f8aecd7f934c23ccd68e65fb96a30012d111 Author: Jerry Hu <[email protected]> AuthorDate: Thu Dec 4 14:34:14 2025 +0800 [fix](olap) Fix the incorrect row count set when reading pruned columns (#58682) ### What problem does this PR solve? The `next_batch` method should accumulate the row count. Related PR: #xxx Problem Summary: ### Release note None ### Check List (For Author) - Test <!-- At least one of them must be included. --> - [ ] Regression test - [ ] Unit Test - [ ] Manual test (add detailed scripts or steps below) - [ ] No need to test or manual test. Explain why: - [ ] This is a refactor/code format and no logic has been changed. - [ ] Previous test can cover this change. - [ ] No code files have been changed. - [ ] Other reason <!-- Add your reason? --> - Behavior changed: - [ ] No. - [ ] Yes. <!-- Explain the behavior change --> - Does this need documentation? - [ ] No. - [ ] Yes. <!-- Add document PR link here. eg: https://github.com/apache/doris-website/pull/1214 --> ### Check List (For Reviewer who merge this PR) - [ ] Confirm the release note - [ ] Confirm test cases - [ ] Confirm document - [ ] Add branch pick label <!-- Add branch pick label that this PR should merge into --> --- be/src/olap/rowset/segment_v2/column_reader.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/be/src/olap/rowset/segment_v2/column_reader.cpp b/be/src/olap/rowset/segment_v2/column_reader.cpp index 3ed95016b46..574388dc2cb 100644 --- a/be/src/olap/rowset/segment_v2/column_reader.cpp +++ b/be/src/olap/rowset/segment_v2/column_reader.cpp @@ -1022,7 +1022,7 @@ Status MapFileColumnIterator::next_batch(size_t* n, vectorized::MutableColumnPtr bool* has_null) { if (_reading_flag == ReadingFlag::SKIP_READING) { DLOG(INFO) << "Map column iterator column " << _column_name << " skip reading."; - dst->resize(*n); + dst->resize(dst->size() + *n); return Status::OK(); } @@ -1212,7 +1212,7 @@ Status StructFileColumnIterator::next_batch(size_t* n, vectorized::MutableColumn bool* has_null) { if (_reading_flag == ReadingFlag::SKIP_READING) { DLOG(INFO) << "Struct column iterator column " << _column_name << " skip reading."; - dst->resize(*n); + dst->resize(dst->size() + *n); return Status::OK(); } @@ -1469,7 +1469,7 @@ Status ArrayFileColumnIterator::next_batch(size_t* n, vectorized::MutableColumnP bool* has_null) { if (_reading_flag == ReadingFlag::SKIP_READING) { DLOG(INFO) << "Array column iterator column " << _column_name << " skip reading."; - dst->resize(*n); + dst->resize(dst->size() + *n); return Status::OK(); } @@ -1686,7 +1686,7 @@ Status FileColumnIterator::next_batch(size_t* n, vectorized::MutableColumnPtr& d bool* has_null) { if (_reading_flag == ReadingFlag::SKIP_READING) { DLOG(INFO) << "File column iterator column " << _column_name << " skip reading."; - dst->resize(*n); + dst->resize(dst->size() + *n); return Status::OK(); } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
