[CP] [to #55485711] fix package record variable with basic member default value & fix typo

This commit is contained in:
obdev 2024-03-22 02:16:14 +00:00 committed by ob-robot
parent 4d0779fb88
commit ae8a21d4e7
2 changed files with 7 additions and 2 deletions

View File

@ -5178,10 +5178,10 @@ int ObPLResolver::resolve_normal_bound_clause(const ObStmtNodeTree &bound_node,
OZ (resolve_expr(
lower_node, static_cast<ObPLCompileUnitAST&>(func), lower_expr,
combine_line_and_col(lower_node->stmt_loc_), true, expected_type));
OX (stmt->set_lower(func.get_expr_count() - 1));
OZ (resolve_expr(
upper_node, static_cast<ObPLCompileUnitAST&>(func), upper_expr,
combine_line_and_col(upper_node->stmt_loc_), true, expected_type));
OX (stmt->set_lower(func.get_expr_count() - 2));
OX (stmt->set_upper(func.get_expr_count() - 1));
OX (stmt->set_bound_type(ObPLForLoopStmt::BoundType::NORMAL));
return ret;

View File

@ -1440,10 +1440,15 @@ int ObRecordType::init_session_var(const ObPLResolveCtx &resolve_ctx,
OV (package_id != OB_INVALID_ID, OB_ERR_UNEXPECTED, KPC(this));
OV (expr_idx != OB_INVALID_INDEX, OB_ERR_UNEXPECTED, KPC(this));
OZ (sql::ObSPIService::spi_calc_package_expr_v1(resolve_ctx, exec_ctx, obj_allocator, package_id, expr_idx, &result));
if (OB_SUCC(ret) && result.is_pl_extend()) {
if (OB_FAIL(ret)) {
} else if (result.is_pl_extend()) {
ObObj tmp;
OZ (ObUserDefinedType::deep_copy_obj(obj_allocator, result, tmp));
OX (result = tmp);
} else {
ObObj tmp;
OZ (common::deep_copy_obj(obj_allocator, result, tmp));
OX (result = tmp);
}
OX (*member = result);
} else {