提交 0feea46b 编写于 作者: O obdev 提交者: wangzelin.wzl

[CP] [to #45843079] fix serval bugs found by external customers

上级 26529621
......@@ -2171,7 +2171,11 @@ int ObMPStmtExecute::parse_basic_param_value(ObIAllocator &allocator,
if (is_oracle_mode() && !is_complex_element) {
param.set_char(dst);
} else {
param.set_varchar(dst);
if (is_complex_element && dst.length()== 0) {
param.set_null();
} else {
param.set_varchar(dst);
}
}
}
}
......
......@@ -7136,7 +7136,7 @@ int ObPLResolver::add_pl_integer_checker_expr(ObRawExprFactory &expr_factory,
if (OB_SUCC(ret)) {
// 对于溢出的检查只关心双目运算符的计算
if (2 == expr->get_param_count() && !IS_COMMON_COMPARISON_OP(expr->get_expr_type())
&& !LOGIC_EXPR(expr) && CHECK_RES_TYPE(expr)) {
&& !LOGIC_EXPR(expr) && expr->get_expr_type() != T_FUN_SYS_POWER && CHECK_RES_TYPE(expr)) {
const ObRawExpr *left = ObRawExprUtils::skip_implicit_cast(expr->get_param_expr(0));
const ObRawExpr *right = ObRawExprUtils::skip_implicit_cast(expr->get_param_expr(1));
ObPLIntegerType left_pl_integer = PL_INTEGER_INVALID, right_pl_integer = PL_INTEGER_INVALID;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册