fix query range bug when intersect in node with other node

This commit is contained in:
obdev
2023-09-11 04:44:06 +00:00
committed by ob-robot
parent a0afdb0564
commit 79e6900f6f

View File

@ -4581,6 +4581,8 @@ int ObQueryRange::do_key_part_node_and(
if (!l_key_part->is_question_mark() && !r_key_part->is_question_mark()) { if (!l_key_part->is_question_mark() && !r_key_part->is_question_mark()) {
l_items = l_key_part->item_next_; l_items = l_key_part->item_next_;
r_items = r_key_part->item_next_; r_items = r_key_part->item_next_;
l_key_part->item_next_ = NULL;
r_key_part->item_next_ = NULL;
if (l_key_part->is_in_key() && r_key_part->is_in_key()) { if (l_key_part->is_in_key() && r_key_part->is_in_key()) {
ObSEArray<int64_t, 4> common_offsets; ObSEArray<int64_t, 4> common_offsets;
if (OB_FAIL(ObOptimizerUtil::intersect(l_key_part->in_keypart_->offsets_, if (OB_FAIL(ObOptimizerUtil::intersect(l_key_part->in_keypart_->offsets_,