From ee5fa3b2de5311d19fe43276f86b9976f942732f Mon Sep 17 00:00:00 2001 From: Hongqin-Li Date: Tue, 1 Aug 2023 15:42:45 +0000 Subject: [PATCH] Fix ret overwrite and avoid use 500 tenant memory --- src/sql/resolver/ddl/ob_alter_table_resolver.cpp | 2 +- src/storage/ddl/ob_ddl_redo_log_replayer.cpp | 3 +-- src/storage/ls/ob_ls_ddl_log_handler.cpp | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/sql/resolver/ddl/ob_alter_table_resolver.cpp b/src/sql/resolver/ddl/ob_alter_table_resolver.cpp index 4f22fdce21..261beb66ec 100644 --- a/src/sql/resolver/ddl/ob_alter_table_resolver.cpp +++ b/src/sql/resolver/ddl/ob_alter_table_resolver.cpp @@ -855,7 +855,7 @@ int ObAlterTableResolver::resolve_action_list(const ParseNode &node) } //deal with drop column affer drop constraint (mysql mode) if (OB_SUCC(ret) && lib::is_mysql_mode() && drop_col_act_position_list.count() > 0) { - for (uint64_t i = 0; i < drop_col_act_position_list.count(); ++i) { + for (uint64_t i = 0; OB_SUCC(ret) && i < drop_col_act_position_list.count(); ++i) { if (OB_FAIL(resolve_drop_column_nodes_for_mysql(*node.children_[drop_col_act_position_list.at(i)], reduced_visible_col_set))) { SQL_RESV_LOG(WARN, "Resolve drop column error!", K(ret)); } diff --git a/src/storage/ddl/ob_ddl_redo_log_replayer.cpp b/src/storage/ddl/ob_ddl_redo_log_replayer.cpp index 6e2ed85784..66c9502ef6 100755 --- a/src/storage/ddl/ob_ddl_redo_log_replayer.cpp +++ b/src/storage/ddl/ob_ddl_redo_log_replayer.cpp @@ -39,8 +39,7 @@ ObDDLRedoLogReplayer::~ObDDLRedoLogReplayer() int ObDDLRedoLogReplayer::init(ObLS *ls) { int ret = OB_SUCCESS; - ObMemAttr attr(OB_SERVER_TENANT_ID, "RedoLogBuckLock"); - SET_USE_500(attr); + ObMemAttr attr(ls->get_tenant_id(), "RedoLogBuckLock"); if (OB_UNLIKELY(is_inited_)) { ret = OB_INIT_TWICE; LOG_WARN("ObDDLRedoLogReplayer has been inited twice", K(ret)); diff --git a/src/storage/ls/ob_ls_ddl_log_handler.cpp b/src/storage/ls/ob_ls_ddl_log_handler.cpp index 0c5656c789..cca723d31d 100644 --- a/src/storage/ls/ob_ls_ddl_log_handler.cpp +++ b/src/storage/ls/ob_ls_ddl_log_handler.cpp @@ -41,7 +41,7 @@ int ObLSDDLLogHandler::init(ObLS *ls) } else if (nullptr == ls) { ret = OB_INVALID_ARGUMENT; LOG_WARN("invalid argument", K(ret)); - } else if (ddl_log_replayer_.init(ls)) { + } else if (OB_FAIL(ddl_log_replayer_.init(ls))) { LOG_WARN("fail to init ddl log replayer", K(ret)); } else { TCWLockGuard guard(online_lock_);