From 38df57d1c444001bfc597c51fec295f0f87b1457 Mon Sep 17 00:00:00 2001 From: Hongqin-Li Date: Mon, 6 Mar 2023 05:11:20 +0000 Subject: [PATCH] Fix index task hang after take effect and canceled --- src/rootserver/ddl_task/ob_index_build_task.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/rootserver/ddl_task/ob_index_build_task.cpp b/src/rootserver/ddl_task/ob_index_build_task.cpp index be219951e6..419f9e330c 100644 --- a/src/rootserver/ddl_task/ob_index_build_task.cpp +++ b/src/rootserver/ddl_task/ob_index_build_task.cpp @@ -1235,7 +1235,10 @@ int ObIndexBuildTask::clean_on_failed() DEBUG_SYNC(CREATE_INDEX_FAILED); bool is_trans_end = false; int64_t tmp_snapshot_version = 0; - if (ObIndexStatus::INDEX_STATUS_INDEX_ERROR != index_schema->get_index_status()) { + if (ObIndexStatus::INDEX_STATUS_AVAILABLE == index_schema->get_index_status()) { + LOG_INFO("index take effect but ddl task failed", K(ret), K(ret_code_), K(index_table_id_)); + state_finished = true; + } else if (ObIndexStatus::INDEX_STATUS_INDEX_ERROR != index_schema->get_index_status()) { state_finished = false; } else if (!wait_trans_ctx_.is_inited() && OB_FAIL(wait_trans_ctx_.init( tenant_id_, object_id_, ObDDLWaitTransEndCtx::WaitTransType::WAIT_SCHEMA_TRANS, index_schema->get_schema_version()))) { -- GitLab