fix rs schedule backup state machine
This commit is contained in:
@ -141,7 +141,9 @@ int ObBackupDataScheduler::do_get_need_reload_task_(
|
||||
ObBackupLSTaskAttr &ls_task = ls_tasks.at(i);
|
||||
ObBackupScheduleTask *task = nullptr;
|
||||
bool is_dropped = false;
|
||||
if (!(job.plus_archivelog_ && set_task_attr.status_.is_backup_log())
|
||||
if (ObBackupTaskStatus::Status::FINISH == ls_task.status_.status_ && OB_SUCCESS == ls_task.result_) {
|
||||
// do nothing
|
||||
} else if (!(job.plus_archivelog_ && set_task_attr.status_.is_backup_log())
|
||||
&& OB_FAIL(ObBackupDataLSTaskMgr::check_ls_is_dropped(ls_task, *sql_proxy_, is_dropped))) {
|
||||
LOG_WARN("failed to check ls is dropped", K(ret), K(ls_task));
|
||||
} else if (is_dropped) {
|
||||
@ -216,6 +218,14 @@ int ObBackupDataScheduler::build_task_(
|
||||
}
|
||||
break;
|
||||
}
|
||||
case ObBackupDataTaskType::Type::BACKUP_META_FINISH: {
|
||||
HEAP_VAR(ObBackupDataLSMetaFinishTask, tmp_task) {
|
||||
if (OB_FAIL(do_build_task_(job, set_task_attr, ls_task, allocator, tmp_task, task))) {
|
||||
LOG_WARN("[DATA_BACKUP]failed to do build task", K(ret), K(job), K(ls_task));
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user