This is an automated email from the ASF dual-hosted git repository. yangzhg 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 d68b8cce1a [fix](intersect) fix intersect query failed in row storage code (#12712) d68b8cce1a is described below commit d68b8cce1a540d013de8b5a2d1909af1f0ffefe5 Author: luozenglin <37725793+luozeng...@users.noreply.github.com> AuthorDate: Mon Sep 19 11:47:50 2022 +0800 [fix](intersect) fix intersect query failed in row storage code (#12712) --- be/src/exec/set_operation_node.cpp | 8 -------- be/src/exec/set_operation_node.h | 1 - regression-test/data/query_p0/intersect/test_intersect.out | 5 +++++ regression-test/suites/query_p0/intersect/test_intersect.groovy | 7 +++++++ 4 files changed, 12 insertions(+), 9 deletions(-) diff --git a/be/src/exec/set_operation_node.cpp b/be/src/exec/set_operation_node.cpp index 882019b199..3458c57293 100644 --- a/be/src/exec/set_operation_node.cpp +++ b/be/src/exec/set_operation_node.cpp @@ -54,14 +54,6 @@ Status SetOperationNode::prepare(RuntimeState* state) { } _build_tuple_size = child(0)->row_desc().tuple_descriptors().size(); _build_tuple_row_size = _build_tuple_size * sizeof(Tuple*); - _build_tuple_idx.reserve(_build_tuple_size); - - for (int i = 0; i < _build_tuple_size; ++i) { - TupleDescriptor* build_tuple_desc = child(0)->row_desc().tuple_descriptors()[i]; - auto tuple_idx = _row_descriptor.get_tuple_idx(build_tuple_desc->id()); - RETURN_IF_INVALID_TUPLE_IDX(build_tuple_desc->id(), tuple_idx); - _build_tuple_idx.push_back(tuple_idx); - } _find_nulls = std::vector<bool>(); for (auto ctx : _child_expr_lists[0]) { _find_nulls.push_back(!ctx->root()->is_slotref() || ctx->is_nullable()); diff --git a/be/src/exec/set_operation_node.h b/be/src/exec/set_operation_node.h index 2d5900345f..4e2722b94d 100644 --- a/be/src/exec/set_operation_node.h +++ b/be/src/exec/set_operation_node.h @@ -71,7 +71,6 @@ protected: // holds everything referenced in _hash_tbl std::unique_ptr<MemPool> _build_pool; - std::vector<int> _build_tuple_idx; int _build_tuple_size; int _build_tuple_row_size; std::vector<bool> _find_nulls; diff --git a/regression-test/data/query_p0/intersect/test_intersect.out b/regression-test/data/query_p0/intersect/test_intersect.out index 4c443b8493..698b8f69f3 100644 --- a/regression-test/data/query_p0/intersect/test_intersect.out +++ b/regression-test/data/query_p0/intersect/test_intersect.out @@ -4,3 +4,8 @@ 2 3 +-- !select -- +1 +2 +3 + diff --git a/regression-test/suites/query_p0/intersect/test_intersect.groovy b/regression-test/suites/query_p0/intersect/test_intersect.groovy index 1c007b95d7..677ed5c514 100644 --- a/regression-test/suites/query_p0/intersect/test_intersect.groovy +++ b/regression-test/suites/query_p0/intersect/test_intersect.groovy @@ -16,6 +16,13 @@ // under the License. suite("test_intersect") { + sql 'set enable_vectorized_engine=false' + qt_select """ + SELECT * FROM (SELECT k1 FROM test_query_db.baseall + INTERSECT SELECT k1 FROM test_query_db.test) a ORDER BY k1 + """ + + sql 'set enable_vectorized_engine=true' qt_select """ SELECT * FROM (SELECT k1 FROM test_query_db.baseall INTERSECT SELECT k1 FROM test_query_db.test) a ORDER BY k1 --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org