From 1511bfcffab6014c7708ac82169d125c7d1c8ce8 Mon Sep 17 00:00:00 2001 From: Larry955 <1412857955@qq.com> Date: Thu, 15 Jun 2023 11:42:27 +0000 Subject: [PATCH] [CP] fix in expr produce duplicated ranges without in optimization --- src/sql/rewrite/ob_query_range.cpp | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/src/sql/rewrite/ob_query_range.cpp b/src/sql/rewrite/ob_query_range.cpp index 0573c88b3..e1792a8eb 100644 --- a/src/sql/rewrite/ob_query_range.cpp +++ b/src/sql/rewrite/ob_query_range.cpp @@ -2719,18 +2719,11 @@ int ObQueryRange::pre_extract_single_in_op(const ObOpRawExpr *b_expr, out_key_part = find_false; } query_range_ctx_->cur_expr_is_precise_ = cur_in_is_precise; - int64_t max_pos = -1; - int64_t cur_pos = out_key_part->pos_.offset_; - bool is_strict_equal = true; - if (OB_FAIL(is_strict_equal_graph(out_key_part, cur_pos, max_pos, is_strict_equal))) { - LOG_WARN("is trict equal graph failed", K(ret)); - } else if (NULL != out_key_part && !is_strict_equal) { - ObKeyPartList key_part_list; - if (OB_FAIL(split_or(out_key_part, key_part_list))) { - LOG_WARN("split temp_result to or_list failed", K(ret)); - } else if (OB_FAIL(or_range_graph(key_part_list, NULL, out_key_part, dtc_params))) { - LOG_WARN("or range graph failed", K(ret)); - } + ObKeyPartList key_part_list; + if (OB_FAIL(split_or(out_key_part, key_part_list))) { + LOG_WARN("split temp_result to or_list failed", K(ret)); + } else if (OB_FAIL(or_range_graph(key_part_list, NULL, out_key_part, dtc_params))) { + LOG_WARN("or range graph failed", K(ret)); } } }