From 726dad3ff753d8c73a6b729e6916cfa074565767 Mon Sep 17 00:00:00 2001 From: Wan <30400994+wanyue-wy@users.noreply.github.com> Date: Thu, 9 Sep 2021 11:24:34 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8E=BB=E9=99=A4alter=E5=A4=96=E9=94=AE?= =?UTF-8?q?=E7=BA=A6=E6=9D=9F=E6=97=B6ob=5Fddl=5Ftimeout=E7=9A=84=E7=BA=A6?= =?UTF-8?q?=E6=9D=9F=EF=BC=8C=E4=BF=AE=E6=94=B9=E5=BD=93=E5=89=8D=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E4=B8=AD=E9=81=97=E5=A4=B1=E8=BF=94=E5=9B=9E=E7=A0=81?= =?UTF-8?q?=E5=92=8Cdead=20code=E7=9A=84=E9=97=AE=E9=A2=98=20(#344)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 去除alter外键约束时ob_ddl_timeout的约束,修改遗失返回码和dead code的问题 * 修改log记录的信息,修改移除dead code的代码 --- src/sql/code_generator/ob_expr_generator_impl.cpp | 6 +----- src/sql/engine/cmd/ob_table_executor.cpp | 5 +++++ src/sql/resolver/ddl/ob_create_func_resolver.cpp | 5 +++-- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/sql/code_generator/ob_expr_generator_impl.cpp b/src/sql/code_generator/ob_expr_generator_impl.cpp index f3bea9e4b..b4fef94b1 100644 --- a/src/sql/code_generator/ob_expr_generator_impl.cpp +++ b/src/sql/code_generator/ob_expr_generator_impl.cpp @@ -956,12 +956,8 @@ int ObExprGeneratorImpl::visit_enum_set_expr(ObNonTerminalRawExpr& expr, ObExprT LOG_WARN("invalid old op", K(expr), K(ret)); } else { ObExprTypeToStr* type_to_str = static_cast(old_op); - if (OB_ISNULL(type_to_str)) { - ret = OB_ERR_UNEXPECTED; - LOG_WARN("failed to static cast ObExprOperator * to ObExprTypeToStr *", K(expr), K(ret)); - } else if (OB_FAIL(enum_set_op->deep_copy_str_values(type_to_str->get_str_values()))) { + if (OB_FAIL(enum_set_op->deep_copy_str_values(type_to_str->get_str_values()))) { LOG_WARN("failed to deep_copy_str_values", K(expr), K(ret)); - } else { /*do nothing*/ } } return ret; diff --git a/src/sql/engine/cmd/ob_table_executor.cpp b/src/sql/engine/cmd/ob_table_executor.cpp index 4a05875df..d03e68afc 100644 --- a/src/sql/engine/cmd/ob_table_executor.cpp +++ b/src/sql/engine/cmd/ob_table_executor.cpp @@ -1742,6 +1742,8 @@ int ObAlterTableExecutor::check_fk_constraint_data_validity(ObExecContext& ctx, const ObString& origin_database_name = alter_table_schema.get_origin_database_name(); const ObString& origin_table_name = alter_table_schema.get_origin_table_name(); const ObTableSchema* orig_table_schema = NULL; + THIS_WORKER.set_timeout_ts(ObTimeUtility::current_time() + OB_MAX_USER_SPECIFIED_TIMEOUT); + const int64_t start_time = ObTimeUtility::current_time(); if (OB_ISNULL(gctx.schema_service_)) { ret = OB_ERR_UNEXPECTED; @@ -1777,6 +1779,9 @@ int ObAlterTableExecutor::check_fk_constraint_data_validity(ObExecContext& ctx, LOG_WARN("fail to check data validity by inner sql", K(ret)); } } + + const int64_t end_time = ObTimeUtility::current_time(); + LOG_DEBUG("elapsed time for check_fk_constraint_data_validity:", K(start_time), K(end_time), K(end_time-start_time)); return ret; } diff --git a/src/sql/resolver/ddl/ob_create_func_resolver.cpp b/src/sql/resolver/ddl/ob_create_func_resolver.cpp index f4eb98e21..8ccf6a225 100644 --- a/src/sql/resolver/ddl/ob_create_func_resolver.cpp +++ b/src/sql/resolver/ddl/ob_create_func_resolver.cpp @@ -53,9 +53,10 @@ int ObCreateFuncResolver::resolve(const ParseNode& parse_tree) } ObObj plugin_path; - session_info_->get_sys_variable(SYS_VAR_PLUGIN_DIR, plugin_path); ObString plugin_path_str; - if (OB_FAIL(plugin_path.get_string(plugin_path_str))) { + if (OB_FAIL(session_info_->get_sys_variable(SYS_VAR_PLUGIN_DIR, plugin_path))) { + LOG_WARN("get sys variable failed", K(ret)); + } else if (OB_FAIL(plugin_path.get_string(plugin_path_str))) { LOG_WARN("get plugin path failed", K(ret)); } else { create_func_arg.udf_.set_name(