diff --git a/src/storage/tx/ob_tx_2pc_ctx_impl.cpp b/src/storage/tx/ob_tx_2pc_ctx_impl.cpp index a599d13764..c998d42e73 100644 --- a/src/storage/tx/ob_tx_2pc_ctx_impl.cpp +++ b/src/storage/tx/ob_tx_2pc_ctx_impl.cpp @@ -75,11 +75,6 @@ int ObPartTransCtx::do_prepare(bool &no_need_submit_log) int ret = OB_SUCCESS; no_need_submit_log = false; - // common operation - if (OB_FAIL(search_unsubmitted_dup_table_redo_())) { - TRANS_LOG(WARN, "search unsubmitted dup table redo", K(ret), KPC(this)); - } - if (OB_SUCC(ret)) { if (sub_state_.is_force_abort()) { if (OB_FAIL(compensate_abort_log_())) { @@ -91,6 +86,12 @@ int ObPartTransCtx::do_prepare(bool &no_need_submit_log) } } + if (OB_SUCC(ret)) { + if (OB_FAIL(search_unsubmitted_dup_table_redo_())) { + TRANS_LOG(WARN, "search unsubmitted dup table redo", K(ret), KPC(this)); + } + } + if (OB_SUCC(ret)) { if (exec_info_.is_dup_tx_ && !is_dup_table_redo_sync_completed_()) { no_need_submit_log = true;