From b0126f2a2dab39b2a5439927ffe495c2226c04f5 Mon Sep 17 00:00:00 2001 From: swjtu-wenxiang Date: Wed, 24 Jul 2024 08:46:05 +0000 Subject: [PATCH] [to #58360299]Fix the 32x case migration issue, package var adapts to decimalint type. --- src/pl/ob_pl_resolver.cpp | 3 ++- src/sql/engine/expr/ob_expr_get_package_var.cpp | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pl/ob_pl_resolver.cpp b/src/pl/ob_pl_resolver.cpp index 5d5cc8dacc..8c5a4dd4be 100644 --- a/src/pl/ob_pl_resolver.cpp +++ b/src/pl/ob_pl_resolver.cpp @@ -13907,7 +13907,8 @@ int ObPLResolver::convert_pltype_to_restype(ObIAllocator &alloc, result_type->set_collation_type(data_type->get_collation_type()); result_type->set_collation_level(data_type->get_collation_level()); } else if (ob_is_number_tc(result_type->get_type()) || - ob_is_interval_tc(result_type->get_type())) { + ob_is_interval_tc(result_type->get_type()) || + ob_is_decimal_int_tc(result_type->get_type())) { result_type->set_precision(data_type->get_precision()); result_type->set_scale(data_type->get_scale()); } else if (ob_is_text_tc(result_type->get_type()) diff --git a/src/sql/engine/expr/ob_expr_get_package_var.cpp b/src/sql/engine/expr/ob_expr_get_package_var.cpp index 9ed7f16c3f..217eaf24b4 100644 --- a/src/sql/engine/expr/ob_expr_get_package_var.cpp +++ b/src/sql/engine/expr/ob_expr_get_package_var.cpp @@ -103,7 +103,8 @@ int ObExprGetPackageVar::calc_result_typeN(ObExprResType &type, type.set_collation_type(result_type->get_collation_type()); type.set_collation_level(result_type->get_collation_level()); } else if (ob_is_number_tc(result_type->get_type()) || - ob_is_interval_tc(result_type->get_type())) { + ob_is_interval_tc(result_type->get_type()) || + ob_is_decimal_int_tc(result_type->get_type())) { type.set_precision(result_type->get_precision()); type.set_scale(result_type->get_scale()); } else if (ob_is_text_tc(result_type->get_type())