This is an automated email from the ASF dual-hosted git repository.
zouxinyi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 2b662ac26b [Fix](segment iterator) fix filter block size and filter
size mismatch problem (#18395)
2b662ac26b is described below
commit 2b662ac26b6a17999757c0308472f4db2fbbde3e
Author: airborne12 <[email protected]>
AuthorDate: Fri Apr 7 09:43:33 2023 +0800
[Fix](segment iterator) fix filter block size and filter size mismatch
problem (#18395)
adding result column id to _column_filter in _output_index_result_column
---
be/src/olap/rowset/segment_v2/segment_iterator.cpp | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/be/src/olap/rowset/segment_v2/segment_iterator.cpp
b/be/src/olap/rowset/segment_v2/segment_iterator.cpp
index cf11e166e6..e020178667 100644
--- a/be/src/olap/rowset/segment_v2/segment_iterator.cpp
+++ b/be/src/olap/rowset/segment_v2/segment_iterator.cpp
@@ -1773,12 +1773,12 @@ Status
SegmentIterator::_next_batch_internal(vectorized::Block* block) {
auto col_const =
vectorized::ColumnConst::create(std::move(res_column),
selected_size);
block->replace_by_position(0, std::move(col_const));
- _output_index_result_column(nullptr, 0, block);
+ _output_index_result_column(sel_rowid_idx, selected_size,
block);
block->shrink_char_type_column_suffix_zero(_char_type_idx_no_0);
RETURN_IF_ERROR(_execute_common_expr(sel_rowid_idx,
selected_size, block));
block->replace_by_position(0, std::move(col0));
} else {
- _output_index_result_column(nullptr, 0, block);
+ _output_index_result_column(sel_rowid_idx, selected_size,
block);
block->shrink_char_type_column_suffix_zero(_char_type_idx);
RETURN_IF_ERROR(_execute_common_expr(sel_rowid_idx,
selected_size, block));
}
@@ -1951,6 +1951,7 @@ void
SegmentIterator::_output_index_result_column(uint16_t* sel_rowid_idx, uint1
}
for (auto& iter : _rowid_result_for_index) {
+ _columns_to_filter.push_back(block->columns());
block->insert({vectorized::ColumnUInt8::create(),
std::make_shared<vectorized::DataTypeUInt8>(),
iter.first});
if (!iter.second.first) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]