From 331db3f52308271470ed98e4c5a3420dabf3cf7c Mon Sep 17 00:00:00 2001 From: obdev Date: Mon, 8 Aug 2022 23:03:24 +0800 Subject: [PATCH] CHAR_LENGTH() output incorrect results when used with subquery --- src/sql/engine/expr/ob_expr_char_length.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sql/engine/expr/ob_expr_char_length.cpp b/src/sql/engine/expr/ob_expr_char_length.cpp index bd0474e84..62c40a3e7 100644 --- a/src/sql/engine/expr/ob_expr_char_length.cpp +++ b/src/sql/engine/expr/ob_expr_char_length.cpp @@ -72,7 +72,7 @@ int ObExprCharLength::eval_char_length(const ObExpr& expr, ObEvalCtx& ctx, ObDat ObObjTypeClass in_tc = ob_obj_type_class(expr.args_[0]->datum_meta_.type_); if (!ob_is_castable_type_class(in_tc)) { res.set_null(); - } else if (expr.eval_param_value(ctx, arg)) { + } else if (OB_FAIL(expr.eval_param_value(ctx, arg))) { LOG_WARN("eval arg failed", K(ret)); } else if (arg->is_null()) { res.set_null(); -- GitLab