From b155155f744ad080e5b7dd43af0ba4fbef031abe Mon Sep 17 00:00:00 2001 From: PatZhuang Date: Wed, 6 Nov 2024 11:44:57 +0000 Subject: [PATCH] fix: fix outline not reproducible error for coalesce subquery --- src/sql/rewrite/ob_transform_subquery_coalesce.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/sql/rewrite/ob_transform_subquery_coalesce.cpp b/src/sql/rewrite/ob_transform_subquery_coalesce.cpp index 3bf526a17..17a38a25e 100644 --- a/src/sql/rewrite/ob_transform_subquery_coalesce.cpp +++ b/src/sql/rewrite/ob_transform_subquery_coalesce.cpp @@ -97,12 +97,13 @@ int ObTransformSubqueryCoalesce::transform_one_stmt(common::ObIArrayequal_param_constraints_, cost_based_equal_infos))) { LOG_WARN("failed to append equal infos", K(ret)); } - - if (OB_SUCC(ret)) { - trans_happened = rule_based_trans_happened || is_happened; - if (OB_FAIL(try_trans_helper.finish(trans_happened, stmt->get_query_ctx(), ctx_))) { - LOG_WARN("failed to finish try trans helper", K(ret)); - } + if (OB_FAIL(ret)) { + } else if (OB_FAIL(try_trans_helper.finish(rule_based_trans_happened || is_happened, + stmt->get_query_ctx(), + ctx_))) { + LOG_WARN("failed to finish try trans helper", K(ret)); + } else if (rule_based_trans_happened || is_happened) { + trans_happened = true; } } while(OB_SUCC(ret) && is_happened); }