From c996648bc37d3ed5e243beaf7c7c2999f55ec791 Mon Sep 17 00:00:00 2001 From: obdev Date: Mon, 7 Nov 2022 13:38:03 +0000 Subject: [PATCH] fix nested subquery bug --- src/sql/resolver/expr/ob_expr_relation_analyzer.cpp | 2 ++ src/sql/rewrite/ob_transform_join_elimination.cpp | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/sql/resolver/expr/ob_expr_relation_analyzer.cpp b/src/sql/resolver/expr/ob_expr_relation_analyzer.cpp index 366f5e43c..f9c29b398 100644 --- a/src/sql/resolver/expr/ob_expr_relation_analyzer.cpp +++ b/src/sql/resolver/expr/ob_expr_relation_analyzer.cpp @@ -160,6 +160,8 @@ int ObExprRelationAnalyzer::visit_stmt(ObDMLStmt *stmt) LOG_WARN("relation expr is null", K(ret), K(expr)); } else if (OB_FAIL(visit_expr(*expr, stmt->get_current_level()))) { LOG_WARN("failed to visit expr", K(ret)); + } else if (OB_FAIL(expr->extract_info())) { + LOG_WARN("failed to extract expr info"); } } if (OB_SUCC(ret) && stmt->is_select_stmt()) { diff --git a/src/sql/rewrite/ob_transform_join_elimination.cpp b/src/sql/rewrite/ob_transform_join_elimination.cpp index 35e9b1f46..5d76e0d4c 100644 --- a/src/sql/rewrite/ob_transform_join_elimination.cpp +++ b/src/sql/rewrite/ob_transform_join_elimination.cpp @@ -1234,7 +1234,7 @@ int ObTransformJoinElimination::left_join_can_be_eliminated(ObDMLStmt *stmt, ret = OB_ERR_UNEXPECTED; LOG_WARN("condition is null", K(ret)); // todo - } else if (condition->is_const_expr()) { + } else if (condition->is_static_scalar_const_expr()) { ObObj value; bool got_result = false; if (OB_FAIL(ObSQLUtils::calc_const_or_calculable_expr(ctx_->exec_ctx_,