fix query range bug when union in node with other node
This commit is contained in:
		| @ -5360,7 +5360,8 @@ int ObQueryRange::or_single_head_graphs(ObKeyPartList &or_list, | ||||
|                 query_range_ctx_->cur_expr_is_precise_ = false; | ||||
|               } | ||||
|             } | ||||
|             if (OB_SUCC(ret) && !cur1->is_question_mark() && !cur2->is_question_mark()) { | ||||
|             if (OB_SUCC(ret) && !cur1->is_question_mark() && !cur2->is_question_mark() && | ||||
|                 cur1->item_next_ == NULL && cur2->item_next_ == NULL) { | ||||
|               if (OB_FAIL(union_in_with_in(or_list, | ||||
|                                            cur1, cur2, | ||||
|                                            exec_ctx, | ||||
| @ -5383,7 +5384,8 @@ int ObQueryRange::or_single_head_graphs(ObKeyPartList &or_list, | ||||
|               } | ||||
|             } | ||||
|             bool need_remove_normal = false; | ||||
|             if (OB_SUCC(ret) && !cur1->is_question_mark() && !cur2->is_question_mark()) { | ||||
|             if (OB_SUCC(ret) && !cur1->is_question_mark() && !cur2->is_question_mark() && | ||||
|                 cur1->item_next_ == NULL && cur2->item_next_ == NULL) { | ||||
|               if (OB_FAIL(union_in_with_normal(cur1, cur2, | ||||
|                                                exec_ctx, | ||||
|                                                dtc_params, | ||||
| @ -5409,7 +5411,8 @@ int ObQueryRange::or_single_head_graphs(ObKeyPartList &or_list, | ||||
|                 query_range_ctx_->cur_expr_is_precise_ = false; | ||||
|               } | ||||
|             } | ||||
|             if (OB_SUCC(ret) && !cur1->is_question_mark() && !cur2->is_question_mark()) { | ||||
|             if (OB_SUCC(ret) && !cur1->is_question_mark() && !cur2->is_question_mark() && | ||||
|                 cur1->item_next_ == NULL && cur2->item_next_ == NULL) { | ||||
|               if (OB_FAIL(union_in_with_normal(cur2, cur1, | ||||
|                                                exec_ctx, | ||||
|                                                dtc_params, | ||||
| @ -8273,7 +8276,7 @@ int ObQueryRange::is_strict_equal_graph( | ||||
|       } else { // check align | ||||
|         if (-1 == max_pos) { | ||||
|           max_pos = next_pos - 1; | ||||
|         } else if (cur_pos != max_pos) { | ||||
|         } else if (next_pos - 1 != max_pos) { | ||||
|           is_strict_equal = false; | ||||
|         } | ||||
|       } | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 obdev
					obdev