From cfed36afbfdeb930f42419cc24a3891370435ae4 Mon Sep 17 00:00:00 2001 From: lihangyu <15605149486@163.com> Date: Wed, 27 Dec 2023 15:42:48 +0800 Subject: [PATCH] [Fix](topn opt) prevent from merge __TEMP__ column in segment iterator (#29121) --- be/src/vec/olap/vcollect_iterator.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/be/src/vec/olap/vcollect_iterator.cpp b/be/src/vec/olap/vcollect_iterator.cpp index ca9e2b7296..b13f5333d5 100644 --- a/be/src/vec/olap/vcollect_iterator.cpp +++ b/be/src/vec/olap/vcollect_iterator.cpp @@ -255,11 +255,14 @@ Status VCollectIterator::_topn_next(Block* block) { auto clone_block = block->clone_empty(); MutableBlock mutable_block = vectorized::MutableBlock::build_mutable_block(&clone_block); - // clear TMPE columns to avoid column align problem in mutable_block.add_rows bellow + // clear TEMP columns to avoid column align problem in mutable_block.add_rows bellow auto all_column_names = mutable_block.get_names(); for (auto& name : all_column_names) { if (name.rfind(BeConsts::BLOCK_TEMP_COLUMN_PREFIX, 0) == 0) { mutable_block.erase(name); + // clear TEMP columns from block to prevent from storage engine merge with this + // fake column + block->erase(name); } }