ls inner handler didn't enable when migrate from src ls which's restore status is restore_sys

This commit is contained in:
hamstersox
2022-11-14 03:08:09 +00:00
committed by wangzelin.wzl
parent 715aa49d82
commit 610919b622
4 changed files with 37 additions and 22 deletions

View File

@ -1219,6 +1219,9 @@ int ObUserTenantBackupJobMgr::report_failed_to_initiator_()
int ObUserTenantBackupJobMgr::check_can_backup_() int ObUserTenantBackupJobMgr::check_can_backup_()
{ {
int ret = OB_SUCCESS; int ret = OB_SUCCESS;
if (share::ObBackupStatus::CANCELING == job_attr_->status_.status_) {
// backup job is canceling, no need to check log archive status
} else {
ObTenantArchiveRoundAttr round_attr; ObTenantArchiveRoundAttr round_attr;
if (OB_FAIL(ObTenantArchiveMgr::get_tenant_current_round(job_attr_->tenant_id_, job_attr_->incarnation_id_, round_attr))) { if (OB_FAIL(ObTenantArchiveMgr::get_tenant_current_round(job_attr_->tenant_id_, job_attr_->incarnation_id_, round_attr))) {
if (OB_ENTRY_NOT_EXIST == ret) { if (OB_ENTRY_NOT_EXIST == ret) {
@ -1235,6 +1238,7 @@ int ObUserTenantBackupJobMgr::check_can_backup_()
} }
LOG_WARN("[DATA_BACKUP]not supported backup when log archive is not doing", K(ret), K(round_attr)); LOG_WARN("[DATA_BACKUP]not supported backup when log archive is not doing", K(ret), K(round_attr));
} }
}
return ret; return ret;
} }

View File

@ -1380,6 +1380,15 @@ int ObStartMigrationTask::deal_local_restore_ls_(bool &need_generate_dag)
} else if (ls_restore_status.is_restore_start() || ls_restore_status.is_restore_sys_tablets()) { } else if (ls_restore_status.is_restore_start() || ls_restore_status.is_restore_sys_tablets()) {
if (OB_FAIL(ls->get_log_handler()->enable_sync())) { if (OB_FAIL(ls->get_log_handler()->enable_sync())) {
LOG_WARN("failed to enable log sync", K(ret), KPC(ctx_), KPC(ls)); LOG_WARN("failed to enable log sync", K(ret), KPC(ctx_), KPC(ls));
} else if (OB_FAIL(ls->get_tablet_svr()->online())) {
LOG_WARN("failed to online tablet svr", K(ret), KPC(ctx_), KPC(ls));
} else if (OB_FAIL(ls->get_tx_svr()->online())) {
LOG_WARN("failed to online tx svr", K(ret), KPC(ctx_), KPC(ls));
} else if (OB_FAIL(ls->get_ddl_log_handler()->online())) {
LOG_WARN("failed to online ddl log handler", K(ret), KPC(ctx_), KPC(ls));
} else if (OB_FAIL(ls->get_ls_wrs_handler()->online())) {
LOG_WARN("failed to online ls wrs handler", K(ret), KPC(ctx_), KPC(ls));
} else if (OB_FALSE_IT(ls->get_checkpoint_executor()->online())) {
} else { } else {
need_generate_dag = false; need_generate_dag = false;
LOG_INFO("ls restore status is in restore start or in restore sys tablets, no need generate dag", LOG_INFO("ls restore status is in restore start or in restore sys tablets, no need generate dag",

View File

@ -206,6 +206,8 @@ public:
checkpoint::ObDataCheckpoint *get_data_checkpoint() { return &data_checkpoint_; } checkpoint::ObDataCheckpoint *get_data_checkpoint() { return &data_checkpoint_; }
transaction::ObKeepAliveLSHandler *get_keep_alive_ls_handler() { return &keep_alive_ls_handler_; } transaction::ObKeepAliveLSHandler *get_keep_alive_ls_handler() { return &keep_alive_ls_handler_; }
ObLSRestoreHandler *get_ls_restore_handler() { return &ls_restore_handler_; } ObLSRestoreHandler *get_ls_restore_handler() { return &ls_restore_handler_; }
ObLSDDLLogHandler *get_ddl_log_handler() { return &ls_ddl_log_handler_; }
// ObObLogHandler interface: // ObObLogHandler interface:
// get the log_service pointer // get the log_service pointer
logservice::ObLogHandler *get_log_handler() { return &log_handler_; } logservice::ObLogHandler *get_log_handler() { return &log_handler_; }