using KPC to avoid core
This commit is contained in:
		@ -84,11 +84,11 @@ int ObBackupDataLSTaskMgr::process(int64_t &finish_cnt)
 | 
				
			|||||||
    ret = OB_NOT_INIT;
 | 
					    ret = OB_NOT_INIT;
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]not init", K(ret));
 | 
					    LOG_WARN("[DATA_BACKUP]not init", K(ret));
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
    FLOG_INFO("[DATA_BACKUP]schedule backup ls task", K(*ls_attr_));
 | 
					    FLOG_INFO("[DATA_BACKUP]schedule backup ls task", KPC(ls_attr_));
 | 
				
			||||||
    switch (ls_attr_->status_.status_) {
 | 
					    switch (ls_attr_->status_.status_) {
 | 
				
			||||||
      case ObBackupTaskStatus::Status::INIT: {
 | 
					      case ObBackupTaskStatus::Status::INIT: {
 | 
				
			||||||
        if (OB_FAIL(gen_and_add_task_())) {
 | 
					        if (OB_FAIL(gen_and_add_task_())) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]failed to gen and add task into task schedulers", K(ret), K(*ls_attr_));
 | 
					          LOG_WARN("[DATA_BACKUP]failed to gen and add task into task schedulers", K(ret), KPC(ls_attr_));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
@ -97,13 +97,13 @@ int ObBackupDataLSTaskMgr::process(int64_t &finish_cnt)
 | 
				
			|||||||
        break;
 | 
					        break;
 | 
				
			||||||
      case ObBackupTaskStatus::Status::FINISH: {
 | 
					      case ObBackupTaskStatus::Status::FINISH: {
 | 
				
			||||||
        if (OB_FAIL(finish_(finish_cnt))) {
 | 
					        if (OB_FAIL(finish_(finish_cnt))) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]failed to finish task", K(ret), K(*ls_attr_));
 | 
					          LOG_WARN("[DATA_BACKUP]failed to finish task", K(ret), KPC(ls_attr_));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      default: {
 | 
					      default: {
 | 
				
			||||||
        ret = OB_ERR_SYS;
 | 
					        ret = OB_ERR_SYS;
 | 
				
			||||||
        LOG_ERROR("[DATA_BACKUP]unknown backup task status", K(ret), K(*ls_attr_));
 | 
					        LOG_ERROR("[DATA_BACKUP]unknown backup task status", K(ret), KPC(ls_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
@ -127,31 +127,31 @@ int ObBackupDataLSTaskMgr::gen_and_add_task_()
 | 
				
			|||||||
#endif
 | 
					#endif
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      if (OB_FAIL(gen_and_add_backup_data_task_())) {
 | 
					      if (OB_FAIL(gen_and_add_backup_data_task_())) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to gen and add backup data task", K(ret), K(*ls_attr_));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to gen and add backup data task", K(ret), KPC(ls_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      break;
 | 
					      break;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    case ObBackupDataTaskType::Type::BACKUP_PLUS_ARCHIVE_LOG: {
 | 
					    case ObBackupDataTaskType::Type::BACKUP_PLUS_ARCHIVE_LOG: {
 | 
				
			||||||
      if (OB_FAIL(gen_and_add_backup_compl_log_())) {
 | 
					      if (OB_FAIL(gen_and_add_backup_compl_log_())) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to gen and add backup complement task", K(ret), K(*ls_attr_));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to gen and add backup complement task", K(ret), KPC(ls_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      break;
 | 
					      break;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    case ObBackupDataTaskType::Type::BACKUP_BUILD_INDEX: {
 | 
					    case ObBackupDataTaskType::Type::BACKUP_BUILD_INDEX: {
 | 
				
			||||||
      if (OB_FAIL(gen_and_add_build_index_task_())) {
 | 
					      if (OB_FAIL(gen_and_add_build_index_task_())) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to gen and add build index task", K(ret), K(*ls_attr_));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to gen and add build index task", K(ret), KPC(ls_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      break;
 | 
					      break;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    case ObBackupDataTaskType::Type::BACKUP_META: {
 | 
					    case ObBackupDataTaskType::Type::BACKUP_META: {
 | 
				
			||||||
      if (OB_FAIL(gen_and_add_backup_meta_task_())) {
 | 
					      if (OB_FAIL(gen_and_add_backup_meta_task_())) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to gen and add build index task", K(ret), K(*ls_attr_));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to gen and add build index task", K(ret), KPC(ls_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      break;
 | 
					      break;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    default: {
 | 
					    default: {
 | 
				
			||||||
      ret = OB_ERR_SYS;
 | 
					      ret = OB_ERR_SYS;
 | 
				
			||||||
      LOG_ERROR("[DATA_BACKUP]unknown backup ls task type", K(ret), K(*ls_attr_));
 | 
					      LOG_ERROR("[DATA_BACKUP]unknown backup ls task type", K(ret), KPC(ls_attr_));
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
@ -194,11 +194,11 @@ int ObBackupDataLSTaskMgr::gen_and_add_backup_meta_task_()
 | 
				
			|||||||
      LOG_WARN("fail to advance ls task status to finish", K(ret));
 | 
					      LOG_WARN("fail to advance ls task status to finish", K(ret));
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  } else if (OB_FAIL(task.build(*job_attr_, *set_task_attr_, *ls_attr_))) {
 | 
					  } else if (OB_FAIL(task.build(*job_attr_, *set_task_attr_, *ls_attr_))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to build task", K(ret), K(*job_attr_), K(*set_task_attr_), K(*ls_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to build task", K(ret), KPC(job_attr_), KPC(set_task_attr_), KPC(ls_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(advance_status(*lease_service_, *sql_proxy_, *ls_attr_, next_status))) {
 | 
					  } else if (OB_FAIL(advance_status(*lease_service_, *sql_proxy_, *ls_attr_, next_status))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to advance task status", K(ret), K(*ls_attr_), K(next_status));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to advance task status", K(ret), KPC(ls_attr_), K(next_status));
 | 
				
			||||||
  } else if (OB_FAIL(task_scheduler_->add_task(task))) {
 | 
					  } else if (OB_FAIL(task_scheduler_->add_task(task))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to add task", K(ret), K(*job_attr_), K(task));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to add task", K(ret), KPC(job_attr_), K(task));
 | 
				
			||||||
  } 
 | 
					  } 
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -221,11 +221,11 @@ int ObBackupDataLSTaskMgr::gen_and_add_backup_data_task_()
 | 
				
			|||||||
      LOG_WARN("fail to advance ls task status to finish", K(ret));
 | 
					      LOG_WARN("fail to advance ls task status to finish", K(ret));
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  } else if (OB_FAIL(task.build(*job_attr_, *set_task_attr_, *ls_attr_))) {
 | 
					  } else if (OB_FAIL(task.build(*job_attr_, *set_task_attr_, *ls_attr_))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to build task", K(ret), K(*job_attr_), K(*set_task_attr_), K(*ls_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to build task", K(ret), KPC(job_attr_), KPC(set_task_attr_), KPC(ls_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(advance_status(*lease_service_, *sql_proxy_, *ls_attr_, next_status))) {
 | 
					  } else if (OB_FAIL(advance_status(*lease_service_, *sql_proxy_, *ls_attr_, next_status))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to advance task status", K(ret), K(*ls_attr_), K(next_status));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to advance task status", K(ret), KPC(ls_attr_), K(next_status));
 | 
				
			||||||
  } else if (OB_FAIL(task_scheduler_->add_task(task))) {
 | 
					  } else if (OB_FAIL(task_scheduler_->add_task(task))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to add task", K(ret), K(*job_attr_), K(task));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to add task", K(ret), KPC(job_attr_), K(task));
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -239,11 +239,11 @@ int ObBackupDataLSTaskMgr::gen_and_add_backup_compl_log_()
 | 
				
			|||||||
  ObBackupTaskStatus next_status;
 | 
					  ObBackupTaskStatus next_status;
 | 
				
			||||||
  next_status.status_ = ObBackupTaskStatus::Status::PENDING;
 | 
					  next_status.status_ = ObBackupTaskStatus::Status::PENDING;
 | 
				
			||||||
  if (OB_FAIL(task.build(*job_attr_, *set_task_attr_, *ls_attr_))) {
 | 
					  if (OB_FAIL(task.build(*job_attr_, *set_task_attr_, *ls_attr_))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to build task", K(ret), K(*job_attr_), K(*set_task_attr_), K(*ls_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to build task", K(ret), KPC(job_attr_), KPC(set_task_attr_), KPC(ls_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(advance_status(*lease_service_, *sql_proxy_, *ls_attr_, next_status))) {
 | 
					  } else if (OB_FAIL(advance_status(*lease_service_, *sql_proxy_, *ls_attr_, next_status))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to advance task status", K(ret), K(*ls_attr_), K(next_status));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to advance task status", K(ret), KPC(ls_attr_), K(next_status));
 | 
				
			||||||
  } else if (OB_FAIL(task_scheduler_->add_task(task))) {
 | 
					  } else if (OB_FAIL(task_scheduler_->add_task(task))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to add task", K(ret), K(*ls_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to add task", K(ret), KPC(ls_attr_));
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -257,11 +257,11 @@ int ObBackupDataLSTaskMgr::gen_and_add_build_index_task_()
 | 
				
			|||||||
  ObBackupTaskStatus next_status;
 | 
					  ObBackupTaskStatus next_status;
 | 
				
			||||||
  next_status.status_ = ObBackupTaskStatus::Status::PENDING;
 | 
					  next_status.status_ = ObBackupTaskStatus::Status::PENDING;
 | 
				
			||||||
  if (OB_FAIL(task.build(*job_attr_, *set_task_attr_, *ls_attr_))) {
 | 
					  if (OB_FAIL(task.build(*job_attr_, *set_task_attr_, *ls_attr_))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to build task", K(ret), K(*job_attr_), K(*set_task_attr_), K(*ls_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to build task", K(ret), KPC(job_attr_), KPC(set_task_attr_), KPC(ls_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(advance_status(*lease_service_, *sql_proxy_, *ls_attr_, next_status))) {
 | 
					  } else if (OB_FAIL(advance_status(*lease_service_, *sql_proxy_, *ls_attr_, next_status))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to advance task status", K(ret), K(*ls_attr_), K(next_status));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to advance task status", K(ret), KPC(ls_attr_), K(next_status));
 | 
				
			||||||
  } else if (OB_FAIL(task_scheduler_->add_task(task))) {
 | 
					  } else if (OB_FAIL(task_scheduler_->add_task(task))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to add task", K(ret), K(*ls_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to add task", K(ret), KPC(ls_attr_));
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -396,7 +396,7 @@ int ObBackupDataLSTaskMgr::finish_(int64_t &finish_cnt)
 | 
				
			|||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        if (OB_FAIL(redo_ls_task(*lease_service_, trans, *ls_attr_, ls_attr_->start_turn_id_, 
 | 
					        if (OB_FAIL(redo_ls_task(*lease_service_, trans, *ls_attr_, ls_attr_->start_turn_id_, 
 | 
				
			||||||
          ls_attr_->turn_id_, next_retry_id))) {
 | 
					          ls_attr_->turn_id_, next_retry_id))) {
 | 
				
			||||||
            LOG_WARN("[DATA_BACKUP]failed to redo ls task", K(ret), K(*ls_attr_));
 | 
					            LOG_WARN("[DATA_BACKUP]failed to redo ls task", K(ret), KPC(ls_attr_));
 | 
				
			||||||
        } 
 | 
					        } 
 | 
				
			||||||
        if (OB_SUCC(ret)) {
 | 
					        if (OB_SUCC(ret)) {
 | 
				
			||||||
          if (OB_FAIL(trans.end(true))) {
 | 
					          if (OB_FAIL(trans.end(true))) {
 | 
				
			||||||
@ -415,7 +415,7 @@ int ObBackupDataLSTaskMgr::finish_(int64_t &finish_cnt)
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
      ret = ls_attr_->result_;
 | 
					      ret = ls_attr_->result_;
 | 
				
			||||||
      LOG_WARN("ls task failed, backup can't not continue", K(ret), K(*ls_attr_));
 | 
					      LOG_WARN("ls task failed, backup can't not continue", K(ret), KPC(ls_attr_));
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
@ -491,13 +491,13 @@ int ObBackupDataLSTaskMgr::cancel(int64_t &finish_cnt)
 | 
				
			|||||||
      if (ret == OB_ENTRY_NOT_EXIST) {
 | 
					      if (ret == OB_ENTRY_NOT_EXIST) {
 | 
				
			||||||
        ret = OB_SUCCESS;
 | 
					        ret = OB_SUCCESS;
 | 
				
			||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to cancel task", K(ret), K(*ls_attr_));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to cancel task", K(ret), KPC(ls_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  if (OB_FAIL(ret)) {
 | 
					  if (OB_FAIL(ret)) {
 | 
				
			||||||
  } else if (OB_FAIL(advance_status(*lease_service_, *sql_proxy_, *ls_attr_, next_status, OB_CANCELED, end_ts))) {
 | 
					  } else if (OB_FAIL(advance_status(*lease_service_, *sql_proxy_, *ls_attr_, next_status, OB_CANCELED, end_ts))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to advance status", K(ret), K(*ls_attr_), K(next_status));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to advance status", K(ret), KPC(ls_attr_), K(next_status));
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
    ++finish_cnt;
 | 
					    ++finish_cnt;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
				
			|||||||
@ -153,7 +153,7 @@ int ObBackupDataScheduler::do_get_need_reload_task_(
 | 
				
			|||||||
      } else if (ObBackupTaskStatus::Status::PENDING == ls_task.status_.status_
 | 
					      } else if (ObBackupTaskStatus::Status::PENDING == ls_task.status_.status_
 | 
				
			||||||
          || ObBackupTaskStatus::Status::DOING == ls_task.status_.status_) {
 | 
					          || ObBackupTaskStatus::Status::DOING == ls_task.status_.status_) {
 | 
				
			||||||
        if (OB_FAIL(tasks.push_back(task))) {
 | 
					        if (OB_FAIL(tasks.push_back(task))) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]failed to push back task", K(ret), K(*task));
 | 
					          LOG_WARN("[DATA_BACKUP]failed to push back task", K(ret), KPC(task));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@ -835,7 +835,7 @@ int ObBackupDataScheduler::handle_execute_over(
 | 
				
			|||||||
      LOG_WARN("[DATA_BACKUP]failed to start trans", K(ret));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to start trans", K(ret));
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
      if (OB_FAIL(ObBackupLSTaskOperator::get_ls_task(trans, true/*for update*/, task->get_task_id(), task->get_tenant_id(), ls_id, ls_attr))) {
 | 
					      if (OB_FAIL(ObBackupLSTaskOperator::get_ls_task(trans, true/*for update*/, task->get_task_id(), task->get_tenant_id(), ls_id, ls_attr))) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to get log stream task", K(ret), K(*task));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to get log stream task", K(ret), KPC(task));
 | 
				
			||||||
      } else if (OB_FAIL(ObBackupDataLSTaskMgr::statistic_info(*lease_service_, trans, ls_attr))) { 
 | 
					      } else if (OB_FAIL(ObBackupDataLSTaskMgr::statistic_info(*lease_service_, trans, ls_attr))) { 
 | 
				
			||||||
  // TODO: delete this when observer support the function that backup progress statistics
 | 
					  // TODO: delete this when observer support the function that backup progress statistics
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to update statistic infomation of ls task", K(ret), K(ls_attr));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to update statistic infomation of ls task", K(ret), K(ls_attr));
 | 
				
			||||||
@ -1032,12 +1032,12 @@ int ObUserTenantBackupJobMgr::deal_non_reentrant_job(const int err)
 | 
				
			|||||||
  job_attr_->end_ts_ = ObTimeUtility::current_time();
 | 
					  job_attr_->end_ts_ = ObTimeUtility::current_time();
 | 
				
			||||||
  bool is_exist_set_task = true;
 | 
					  bool is_exist_set_task = true;
 | 
				
			||||||
  bool is_start = false;
 | 
					  bool is_start = false;
 | 
				
			||||||
  LOG_INFO("start to deal non reentrant job", K(*job_attr_), KP(err));
 | 
					  LOG_INFO("start to deal non reentrant job", KPC(job_attr_), KP(err));
 | 
				
			||||||
  if (IS_NOT_INIT) {
 | 
					  if (IS_NOT_INIT) {
 | 
				
			||||||
    ret = OB_INVALID_ARGUMENT;
 | 
					    ret = OB_INVALID_ARGUMENT;
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]not init", K(ret));
 | 
					    LOG_WARN("[DATA_BACKUP]not init", K(ret));
 | 
				
			||||||
  } else if (OB_FAIL(task_scheduler_->cancel_tasks(BackupJobType::BACKUP_DATA_JOB, job_attr_->job_id_, job_attr_->tenant_id_))) {
 | 
					  } else if (OB_FAIL(task_scheduler_->cancel_tasks(BackupJobType::BACKUP_DATA_JOB, job_attr_->job_id_, job_attr_->tenant_id_))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to cancel backup tasks", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to cancel backup tasks", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (ObBackupStatus::Status::INIT == job_attr_->status_.status_) {
 | 
					  } else if (ObBackupStatus::Status::INIT == job_attr_->status_.status_) {
 | 
				
			||||||
    if (OB_FAIL(advance_job_status(*sql_proxy_, next_status, err, job_attr_->end_ts_))) {
 | 
					    if (OB_FAIL(advance_job_status(*sql_proxy_, next_status, err, job_attr_->end_ts_))) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to move job status to FAILED", K(ret), KPC(job_attr_));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to move job status to FAILED", K(ret), KPC(job_attr_));
 | 
				
			||||||
@ -1056,7 +1056,7 @@ int ObUserTenantBackupJobMgr::deal_non_reentrant_job(const int err)
 | 
				
			|||||||
      if (OB_FAIL(set_task_mgr.deal_failed_set_task(trans))) {
 | 
					      if (OB_FAIL(set_task_mgr.deal_failed_set_task(trans))) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to deal failed set task", K(ret));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to deal failed set task", K(ret));
 | 
				
			||||||
      } else if (OB_FAIL(advance_job_status(trans, next_status, err, job_attr_->end_ts_))) {
 | 
					      } else if (OB_FAIL(advance_job_status(trans, next_status, err, job_attr_->end_ts_))) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to move job status to FAILED", K(ret), K(*job_attr_));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to move job status to FAILED", K(ret), KPC(job_attr_));
 | 
				
			||||||
      } 
 | 
					      } 
 | 
				
			||||||
      if (OB_SUCC(ret)) {
 | 
					      if (OB_SUCC(ret)) {
 | 
				
			||||||
        if (OB_FAIL(trans.end(true))) {
 | 
					        if (OB_FAIL(trans.end(true))) {
 | 
				
			||||||
@ -1096,13 +1096,13 @@ int ObUserTenantBackupJobMgr::process()
 | 
				
			|||||||
        if (OB_FAIL(check_dest_validity_())) {
 | 
					        if (OB_FAIL(check_dest_validity_())) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]fail to check dest validity", K(ret));
 | 
					          LOG_WARN("[DATA_BACKUP]fail to check dest validity", K(ret));
 | 
				
			||||||
        } else if (OB_FAIL(persist_set_task_())) {
 | 
					        } else if (OB_FAIL(persist_set_task_())) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]failed to persist log stream task", K(ret), K(*job_attr_));
 | 
					          LOG_WARN("[DATA_BACKUP]failed to persist log stream task", K(ret), KPC(job_attr_));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      case ObBackupStatus::Status::DOING: {
 | 
					      case ObBackupStatus::Status::DOING: {
 | 
				
			||||||
        if (OB_FAIL(do_set_task_())) {
 | 
					        if (OB_FAIL(do_set_task_())) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]failed to backup data", K(ret), K(*job_attr_));
 | 
					          LOG_WARN("[DATA_BACKUP]failed to backup data", K(ret), KPC(job_attr_));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
@ -1110,19 +1110,19 @@ int ObUserTenantBackupJobMgr::process()
 | 
				
			|||||||
      case ObBackupStatus::Status::FAILED:
 | 
					      case ObBackupStatus::Status::FAILED:
 | 
				
			||||||
      case ObBackupStatus::Status::CANCELED: {
 | 
					      case ObBackupStatus::Status::CANCELED: {
 | 
				
			||||||
        if (OB_FAIL(move_to_history_())) {
 | 
					        if (OB_FAIL(move_to_history_())) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]failed to move job and set to histroy", K(ret), K(*job_attr_));
 | 
					          LOG_WARN("[DATA_BACKUP]failed to move job and set to histroy", K(ret), KPC(job_attr_));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      case ObBackupStatus::Status::CANCELING: {
 | 
					      case ObBackupStatus::Status::CANCELING: {
 | 
				
			||||||
        if (OB_FAIL(cancel_())) {
 | 
					        if (OB_FAIL(cancel_())) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]failed to cancel backup", K(ret), K(*job_attr_));
 | 
					          LOG_WARN("[DATA_BACKUP]failed to cancel backup", K(ret), KPC(job_attr_));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      default: {
 | 
					      default: {
 | 
				
			||||||
        ret = OB_ERR_SYS;
 | 
					        ret = OB_ERR_SYS;
 | 
				
			||||||
        LOG_ERROR("[DATA_BACKUP]unknown backup status", K(ret), K(*job_attr_));
 | 
					        LOG_ERROR("[DATA_BACKUP]unknown backup status", K(ret), KPC(job_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
@ -1158,7 +1158,7 @@ int ObUserTenantBackupJobMgr::move_to_history_()
 | 
				
			|||||||
  ObMySQLTransaction trans;
 | 
					  ObMySQLTransaction trans;
 | 
				
			||||||
  ObBackupSetTaskMgr set_task_mgr;
 | 
					  ObBackupSetTaskMgr set_task_mgr;
 | 
				
			||||||
  if (is_sys_tenant(job_attr_->initiator_tenant_id_) && OB_FAIL(report_failed_to_initiator_())) {
 | 
					  if (is_sys_tenant(job_attr_->initiator_tenant_id_) && OB_FAIL(report_failed_to_initiator_())) {
 | 
				
			||||||
    LOG_WARN("fail to report job finish to initiator tenant id", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("fail to report job finish to initiator tenant id", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(trans.start(sql_proxy_, tenant_id_))) {
 | 
					  } else if (OB_FAIL(trans.start(sql_proxy_, tenant_id_))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to start trans", K(ret));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to start trans", K(ret));
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
@ -1167,7 +1167,7 @@ int ObUserTenantBackupJobMgr::move_to_history_()
 | 
				
			|||||||
      if (OB_ENTRY_NOT_EXIST == ret) { // when job was canceled in INIT STATUS, there are no set task in task table.
 | 
					      if (OB_ENTRY_NOT_EXIST == ret) { // when job was canceled in INIT STATUS, there are no set task in task table.
 | 
				
			||||||
        ret = OB_SUCCESS;
 | 
					        ret = OB_SUCCESS;
 | 
				
			||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to init set task mgr", K(ret), K(*job_attr_));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to init set task mgr", K(ret), KPC(job_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    } else if (OB_FAIL(set_task_mgr.do_clean_up(trans))) {
 | 
					    } else if (OB_FAIL(set_task_mgr.do_clean_up(trans))) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to do clean up", K(ret), K(set_task_mgr));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to do clean up", K(ret), K(set_task_mgr));
 | 
				
			||||||
@ -1175,7 +1175,7 @@ int ObUserTenantBackupJobMgr::move_to_history_()
 | 
				
			|||||||
    
 | 
					    
 | 
				
			||||||
    if (OB_FAIL(ret)) {
 | 
					    if (OB_FAIL(ret)) {
 | 
				
			||||||
    } else if (OB_FAIL(ObBackupJobOperator::move_job_to_his(trans, job_attr_->tenant_id_, job_attr_->job_id_))) {
 | 
					    } else if (OB_FAIL(ObBackupJobOperator::move_job_to_his(trans, job_attr_->tenant_id_, job_attr_->job_id_))) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to move job to history", K(ret), K(*job_attr_));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to move job to history", K(ret), KPC(job_attr_));
 | 
				
			||||||
    } 
 | 
					    } 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (OB_SUCC(ret)) {
 | 
					    if (OB_SUCC(ret)) {
 | 
				
			||||||
@ -1255,7 +1255,7 @@ int ObUserTenantBackupJobMgr::cancel_()
 | 
				
			|||||||
  int ret = OB_SUCCESS;
 | 
					  int ret = OB_SUCCESS;
 | 
				
			||||||
  ObBackupSetTaskMgr set_task_mgr;
 | 
					  ObBackupSetTaskMgr set_task_mgr;
 | 
				
			||||||
  if (OB_FAIL(check_can_backup_())) {
 | 
					  if (OB_FAIL(check_can_backup_())) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to check can backup", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to check can backup", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(update_set_task_to_canceling_())) {
 | 
					  } else if (OB_FAIL(update_set_task_to_canceling_())) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to update set task to canceling", K(ret));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to update set task to canceling", K(ret));
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
@ -1266,7 +1266,7 @@ int ObUserTenantBackupJobMgr::cancel_()
 | 
				
			|||||||
        is_set_task_exist = false;
 | 
					        is_set_task_exist = false;
 | 
				
			||||||
        ret = OB_SUCCESS;
 | 
					        ret = OB_SUCCESS;
 | 
				
			||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to init set task mgr", K(ret), K(*job_attr_));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to init set task mgr", K(ret), KPC(job_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    } else if (OB_FAIL(set_task_mgr.process())) {
 | 
					    } else if (OB_FAIL(set_task_mgr.process())) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to persist ls task", K(ret), K(set_task_mgr));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to persist ls task", K(ret), K(set_task_mgr));
 | 
				
			||||||
@ -1279,7 +1279,7 @@ int ObUserTenantBackupJobMgr::cancel_()
 | 
				
			|||||||
      if (OB_FAIL(advance_job_status(*sql_proxy_, next_status, OB_CANCELED, job_attr_->end_ts_))) {
 | 
					      if (OB_FAIL(advance_job_status(*sql_proxy_, next_status, OB_CANCELED, job_attr_->end_ts_))) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to advance_job_status", K(ret));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to advance_job_status", K(ret));
 | 
				
			||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        LOG_INFO("succeed to cancel job, advance job status to CANCELED", K(*job_attr_));
 | 
					        LOG_INFO("succeed to cancel job, advance job status to CANCELED", KPC(job_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
@ -1313,7 +1313,7 @@ int ObUserTenantBackupJobMgr::update_set_task_to_canceling_()
 | 
				
			|||||||
    ret = OB_ERR_UNEXPECTED;
 | 
					    ret = OB_ERR_UNEXPECTED;
 | 
				
			||||||
    LOG_ERROR("[DATA_BACKUP]invalid affected_rows", K(ret), K(affected_rows), K(sql), K(next_status));
 | 
					    LOG_ERROR("[DATA_BACKUP]invalid affected_rows", K(ret), K(affected_rows), K(sql), K(next_status));
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
    LOG_INFO("[DATA_BACKUP]advance set task status", K(*job_attr_), K(next_status), K(sql));
 | 
					    LOG_INFO("[DATA_BACKUP]advance set task status", KPC(job_attr_), K(next_status), K(sql));
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -1323,7 +1323,7 @@ int ObUserTenantBackupJobMgr::do_set_task_()
 | 
				
			|||||||
  int ret = OB_SUCCESS;
 | 
					  int ret = OB_SUCCESS;
 | 
				
			||||||
  LOG_INFO("job is in doing backup set task", KPC(job_attr_));
 | 
					  LOG_INFO("job is in doing backup set task", KPC(job_attr_));
 | 
				
			||||||
  if (OB_FAIL(check_can_backup_())) {
 | 
					  if (OB_FAIL(check_can_backup_())) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to check can backup", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to check can backup", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else { 
 | 
					  } else { 
 | 
				
			||||||
    ObBackupStatus next_status;
 | 
					    ObBackupStatus next_status;
 | 
				
			||||||
    ObBackupSetTaskMgr set_task_mgr;
 | 
					    ObBackupSetTaskMgr set_task_mgr;
 | 
				
			||||||
@ -1337,7 +1337,7 @@ int ObUserTenantBackupJobMgr::do_set_task_()
 | 
				
			|||||||
        || ObBackupStatus::Status::FAILED == next_status.status_) {
 | 
					        || ObBackupStatus::Status::FAILED == next_status.status_) {
 | 
				
			||||||
      job_attr_->end_ts_ = ObTimeUtility::current_time();
 | 
					      job_attr_->end_ts_ = ObTimeUtility::current_time();
 | 
				
			||||||
      if (OB_FAIL(advance_job_status(*sql_proxy_, next_status, job_attr_->result_, job_attr_->end_ts_))) {
 | 
					      if (OB_FAIL(advance_job_status(*sql_proxy_, next_status, job_attr_->result_, job_attr_->end_ts_))) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to advance status", K(ret), K(next_status), K(*job_attr_));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to advance status", K(ret), K(next_status), KPC(job_attr_));
 | 
				
			||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        LOG_INFO("[DATA_BACKUP]succeed doing backup set task, and advancing job status to next status", 
 | 
					        LOG_INFO("[DATA_BACKUP]succeed doing backup set task, and advancing job status to next status", 
 | 
				
			||||||
            K(next_status), "tenant_id", job_attr_->tenant_id_, "job_id", job_attr_->job_id_);
 | 
					            K(next_status), "tenant_id", job_attr_->tenant_id_, "job_id", job_attr_->job_id_);
 | 
				
			||||||
@ -1354,15 +1354,15 @@ int ObUserTenantBackupJobMgr::persist_set_task_()
 | 
				
			|||||||
  ObMySQLTransaction trans;
 | 
					  ObMySQLTransaction trans;
 | 
				
			||||||
  LOG_INFO("start to persist set task", KPC(job_attr_));
 | 
					  LOG_INFO("start to persist set task", KPC(job_attr_));
 | 
				
			||||||
  if (OB_FAIL(check_can_backup_())) {
 | 
					  if (OB_FAIL(check_can_backup_())) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to check can backup", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to check can backup", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(trans.start(sql_proxy_, tenant_id_))) {
 | 
					  } else if (OB_FAIL(trans.start(sql_proxy_, tenant_id_))) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to start trans", K(ret));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to start trans", K(ret));
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
    ObBackupStatus next_status(ObBackupStatus::Status::DOING);
 | 
					    ObBackupStatus next_status(ObBackupStatus::Status::DOING);
 | 
				
			||||||
    if (OB_FAIL(insert_backup_set_task_(trans))) {
 | 
					    if (OB_FAIL(insert_backup_set_task_(trans))) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to insert backup set task", K(ret), K(*job_attr_));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to insert backup set task", K(ret), KPC(job_attr_));
 | 
				
			||||||
    } else if (OB_FAIL(insert_backup_set_file_(trans))) {
 | 
					    } else if (OB_FAIL(insert_backup_set_file_(trans))) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to insert backup set file", K(ret), K(*job_attr_));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to insert backup set file", K(ret), KPC(job_attr_));
 | 
				
			||||||
    } else if (OB_FAIL(advance_job_status(trans, next_status))) {
 | 
					    } else if (OB_FAIL(advance_job_status(trans, next_status))) {
 | 
				
			||||||
      LOG_WARN("fail to advance job status to doing", K(ret), KPC(job_attr_));
 | 
					      LOG_WARN("fail to advance job status to doing", K(ret), KPC(job_attr_));
 | 
				
			||||||
    } 
 | 
					    } 
 | 
				
			||||||
@ -1398,9 +1398,9 @@ int ObUserTenantBackupJobMgr::insert_backup_set_task_(common::ObISQLClient &sql_
 | 
				
			|||||||
  int ret = OB_SUCCESS;
 | 
					  int ret = OB_SUCCESS;
 | 
				
			||||||
  ObBackupSetTaskAttr backup_set_task;
 | 
					  ObBackupSetTaskAttr backup_set_task;
 | 
				
			||||||
  if (OB_FAIL(backup_set_task.passwd_.assign(job_attr_->passwd_))) {
 | 
					  if (OB_FAIL(backup_set_task.passwd_.assign(job_attr_->passwd_))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to assign passwd", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to assign passwd", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(backup_set_task.backup_path_.assign(job_attr_->backup_path_))) {
 | 
					  } else if (OB_FAIL(backup_set_task.backup_path_.assign(job_attr_->backup_path_))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to assign backup dest", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to assign backup dest", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(get_next_task_id_(sql_proxy, backup_set_task.task_id_))) {
 | 
					  } else if (OB_FAIL(get_next_task_id_(sql_proxy, backup_set_task.task_id_))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to get next task id", K(ret));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to get next task id", K(ret));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupDataScheduler::get_scn(sql_proxy, job_attr_->tenant_id_, backup_set_task.start_scn_))) {
 | 
					  } else if (OB_FAIL(ObBackupDataScheduler::get_scn(sql_proxy, job_attr_->tenant_id_, backup_set_task.start_scn_))) {
 | 
				
			||||||
@ -1438,17 +1438,17 @@ int ObUserTenantBackupJobMgr::insert_backup_set_file_(common::ObISQLClient &sql_
 | 
				
			|||||||
  ObBackupDest backup_dest;
 | 
					  ObBackupDest backup_dest;
 | 
				
			||||||
  if (OB_FAIL(ObBackupSetFileOperator::get_prev_backup_set_id(sql_proxy, job_attr_->tenant_id_, job_attr_->backup_set_id_, 
 | 
					  if (OB_FAIL(ObBackupSetFileOperator::get_prev_backup_set_id(sql_proxy, job_attr_->tenant_id_, job_attr_->backup_set_id_, 
 | 
				
			||||||
      job_attr_->backup_type_, job_attr_->backup_path_, prev_full_backup_set_id, prev_inc_backup_set_id))) {
 | 
					      job_attr_->backup_type_, job_attr_->backup_path_, prev_full_backup_set_id, prev_inc_backup_set_id))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]fail to get prev backup set id", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]fail to get prev backup set id", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupStorageInfoOperator::get_backup_dest(sql_proxy, job_attr_->tenant_id_, job_attr_->backup_path_, backup_dest))) {
 | 
					  } else if (OB_FAIL(ObBackupStorageInfoOperator::get_backup_dest(sql_proxy, job_attr_->tenant_id_, job_attr_->backup_path_, backup_dest))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]fail to get backup dest", K(ret), K(*job_attr_)); 
 | 
					    LOG_WARN("[DATA_BACKUP]fail to get backup dest", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupStorageInfoOperator::get_dest_id(sql_proxy, job_attr_->tenant_id_, backup_dest, dest_id))) {
 | 
					  } else if (OB_FAIL(ObBackupStorageInfoOperator::get_dest_id(sql_proxy, job_attr_->tenant_id_, backup_dest, dest_id))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]fail to get dest id", K(ret), K(*job_attr_)); 
 | 
					    LOG_WARN("[DATA_BACKUP]fail to get dest id", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(fill_backup_set_desc_(*job_attr_, prev_full_backup_set_id, prev_inc_backup_set_id, dest_id, backup_set_desc))) {
 | 
					  } else if (OB_FAIL(fill_backup_set_desc_(*job_attr_, prev_full_backup_set_id, prev_inc_backup_set_id, dest_id, backup_set_desc))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]fail to fill backup set desc", K(ret), K(*job_attr_), K(prev_full_backup_set_id), K(prev_inc_backup_set_id));
 | 
					    LOG_WARN("[DATA_BACKUP]fail to fill backup set desc", K(ret), KPC(job_attr_), K(prev_full_backup_set_id), K(prev_inc_backup_set_id));
 | 
				
			||||||
  } else if (OB_FAIL(lease_service_->check_lease())) {
 | 
					  } else if (OB_FAIL(lease_service_->check_lease())) {
 | 
				
			||||||
    LOG_WARN("fail to check leader", K(ret));
 | 
					    LOG_WARN("fail to check leader", K(ret));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupSetFileOperator::insert_backup_set_file(sql_proxy, backup_set_desc))) {
 | 
					  } else if (OB_FAIL(ObBackupSetFileOperator::insert_backup_set_file(sql_proxy, backup_set_desc))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]fail to insert backup set file", K(ret), K(backup_set_desc), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]fail to insert backup set file", K(ret), K(backup_set_desc), KPC(job_attr_));
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -1517,7 +1517,7 @@ int ObUserTenantBackupJobMgr::advance_job_status(
 | 
				
			|||||||
  if (OB_FAIL(lease_service_->check_lease())) {
 | 
					  if (OB_FAIL(lease_service_->check_lease())) {
 | 
				
			||||||
    LOG_WARN("fail to check leader", K(ret));
 | 
					    LOG_WARN("fail to check leader", K(ret));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupJobOperator::advance_job_status(trans, *job_attr_, next_status, result, end_ts))) {
 | 
					  } else if (OB_FAIL(ObBackupJobOperator::advance_job_status(trans, *job_attr_, next_status, result, end_ts))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to advance job status", K(ret), K(*job_attr_), K(next_status), K(result), K(end_ts));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to advance job status", K(ret), KPC(job_attr_), K(next_status), K(result), K(end_ts));
 | 
				
			||||||
  } 
 | 
					  } 
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -1543,7 +1543,7 @@ int ObSysTenantBackupJobMgr::process()
 | 
				
			|||||||
      } 
 | 
					      } 
 | 
				
			||||||
      case ObBackupStatus::Status::DOING: {
 | 
					      case ObBackupStatus::Status::DOING: {
 | 
				
			||||||
        if (OB_FAIL(statistic_user_tenant_job_())) {
 | 
					        if (OB_FAIL(statistic_user_tenant_job_())) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]failed to backup data", K(ret), K(*job_attr_));
 | 
					          LOG_WARN("[DATA_BACKUP]failed to backup data", K(ret), KPC(job_attr_));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
@ -1551,19 +1551,19 @@ int ObSysTenantBackupJobMgr::process()
 | 
				
			|||||||
      case ObBackupStatus::Status::FAILED: 
 | 
					      case ObBackupStatus::Status::FAILED: 
 | 
				
			||||||
      case ObBackupStatus::Status::CANCELED: {
 | 
					      case ObBackupStatus::Status::CANCELED: {
 | 
				
			||||||
        if (OB_FAIL(move_to_history_())) {
 | 
					        if (OB_FAIL(move_to_history_())) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]failed to move job to histroy", K(ret), K(*job_attr_));
 | 
					          LOG_WARN("[DATA_BACKUP]failed to move job to histroy", K(ret), KPC(job_attr_));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      case ObBackupStatus::Status::CANCELING: {
 | 
					      case ObBackupStatus::Status::CANCELING: {
 | 
				
			||||||
        if (OB_FAIL(cancel_user_tenant_job_())) {
 | 
					        if (OB_FAIL(cancel_user_tenant_job_())) {
 | 
				
			||||||
          LOG_WARN("[DATA_BACKUP]failed to cancel backup job", K(ret), K(*job_attr_));
 | 
					          LOG_WARN("[DATA_BACKUP]failed to cancel backup job", K(ret), KPC(job_attr_));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      default: {
 | 
					      default: {
 | 
				
			||||||
        ret = OB_ERR_SYS;
 | 
					        ret = OB_ERR_SYS;
 | 
				
			||||||
        LOG_ERROR("[DATA_BACKUP]unknown backup status", K(ret), K(*job_attr_));
 | 
					        LOG_ERROR("[DATA_BACKUP]unknown backup status", K(ret), KPC(job_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
@ -1600,10 +1600,10 @@ int ObSysTenantBackupJobMgr::handle_user_tenant_backupdatabase_()
 | 
				
			|||||||
  if (OB_SUCC(ret)) {
 | 
					  if (OB_SUCC(ret)) {
 | 
				
			||||||
    ObBackupStatus next_status(ObBackupStatus::Status::DOING);
 | 
					    ObBackupStatus next_status(ObBackupStatus::Status::DOING);
 | 
				
			||||||
    if (OB_FAIL(advance_status_(*sql_proxy_, next_status))) {
 | 
					    if (OB_FAIL(advance_status_(*sql_proxy_, next_status))) {
 | 
				
			||||||
      LOG_WARN("fail to advance sys job status", K(ret), K(*job_attr_), K(next_status));
 | 
					      LOG_WARN("fail to advance sys job status", K(ret), KPC(job_attr_), K(next_status));
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
      backup_service_->wakeup();
 | 
					      backup_service_->wakeup();
 | 
				
			||||||
      LOG_INFO("succeed handle user tenant backupdatabase, advance sys job to DOING", K(*job_attr_), K(next_status));
 | 
					      LOG_INFO("succeed handle user tenant backupdatabase, advance sys job to DOING", KPC(job_attr_), K(next_status));
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
@ -1654,7 +1654,7 @@ int ObSysTenantBackupJobMgr::statistic_user_tenant_job_()
 | 
				
			|||||||
  bool is_valid = false;
 | 
					  bool is_valid = false;
 | 
				
			||||||
  int64_t finish_user_backup_job  = 0;
 | 
					  int64_t finish_user_backup_job  = 0;
 | 
				
			||||||
  ObBackupJobAttr tmp_job_attr;
 | 
					  ObBackupJobAttr tmp_job_attr;
 | 
				
			||||||
  LOG_INFO("sys tenant start to statistic user tenant job", K(*job_attr_));
 | 
					  LOG_INFO("sys tenant start to statistic user tenant job", KPC(job_attr_));
 | 
				
			||||||
  for (int64_t i = 0; OB_SUCC(ret) && i < job_attr_->executor_tenant_id_.count(); ++i) {
 | 
					  for (int64_t i = 0; OB_SUCC(ret) && i < job_attr_->executor_tenant_id_.count(); ++i) {
 | 
				
			||||||
    const uint64_t user_tenant_id = job_attr_->executor_tenant_id_.at(i);
 | 
					    const uint64_t user_tenant_id = job_attr_->executor_tenant_id_.at(i);
 | 
				
			||||||
    is_valid = false;
 | 
					    is_valid = false;
 | 
				
			||||||
@ -1690,9 +1690,9 @@ int ObSysTenantBackupJobMgr::statistic_user_tenant_job_()
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
    if (OB_SUCC(ret)) {
 | 
					    if (OB_SUCC(ret)) {
 | 
				
			||||||
      if (OB_FAIL(advance_status_(*sql_proxy_, next_status, tmp_job_attr.result_, ObTimeUtility::current_time()))) {
 | 
					      if (OB_FAIL(advance_status_(*sql_proxy_, next_status, tmp_job_attr.result_, ObTimeUtility::current_time()))) {
 | 
				
			||||||
        LOG_WARN("fail to advance sys job status", K(ret), K(*job_attr_), K(next_status));
 | 
					        LOG_WARN("fail to advance sys job status", K(ret), KPC(job_attr_), K(next_status));
 | 
				
			||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        LOG_INFO("[DATA_BACKUP]user job finished, sys job move to next status", K(next_status), K(*job_attr_));
 | 
					        LOG_INFO("[DATA_BACKUP]user job finished, sys job move to next status", K(next_status), KPC(job_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
@ -1705,9 +1705,9 @@ int ObSysTenantBackupJobMgr::move_to_history_()
 | 
				
			|||||||
  if (OB_FAIL(lease_service_->check_lease())) {
 | 
					  if (OB_FAIL(lease_service_->check_lease())) {
 | 
				
			||||||
    LOG_WARN("fail to check leader", K(ret));
 | 
					    LOG_WARN("fail to check leader", K(ret));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupJobOperator::move_job_to_his(*sql_proxy_, job_attr_->tenant_id_, job_attr_->job_id_))) {
 | 
					  } else if (OB_FAIL(ObBackupJobOperator::move_job_to_his(*sql_proxy_, job_attr_->tenant_id_, job_attr_->job_id_))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to move job to history table", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to move job to history table", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
    LOG_INFO("sys tenant backup job succeed move to history table", K(*job_attr_));
 | 
					    LOG_INFO("sys tenant backup job succeed move to history table", KPC(job_attr_));
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -1752,9 +1752,9 @@ int ObSysTenantBackupJobMgr::cancel_user_tenant_job_()
 | 
				
			|||||||
    ObBackupStatus next_status(ObBackupStatus::Status::CANCELED);
 | 
					    ObBackupStatus next_status(ObBackupStatus::Status::CANCELED);
 | 
				
			||||||
    if (OB_SUCC(ret)) {
 | 
					    if (OB_SUCC(ret)) {
 | 
				
			||||||
      if (OB_FAIL(advance_status_(*sql_proxy_, next_status, OB_CANCELED, ObTimeUtility::current_time()))) {
 | 
					      if (OB_FAIL(advance_status_(*sql_proxy_, next_status, OB_CANCELED, ObTimeUtility::current_time()))) {
 | 
				
			||||||
        LOG_WARN("fail to advance sys job status", K(ret), K(*job_attr_), K(next_status));
 | 
					        LOG_WARN("fail to advance sys job status", K(ret), KPC(job_attr_), K(next_status));
 | 
				
			||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        FLOG_INFO("[DATA_BACKUP]succeed schedule sys backup job", K(*job_attr_));
 | 
					        FLOG_INFO("[DATA_BACKUP]succeed schedule sys backup job", KPC(job_attr_));
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
@ -1771,7 +1771,7 @@ int ObSysTenantBackupJobMgr::advance_status_(
 | 
				
			|||||||
  if (OB_FAIL(lease_service_->check_lease())) {
 | 
					  if (OB_FAIL(lease_service_->check_lease())) {
 | 
				
			||||||
    LOG_WARN("fail to check leader", K(ret));
 | 
					    LOG_WARN("fail to check leader", K(ret));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupJobOperator::advance_job_status(sql_proxy, *job_attr_, next_status, result, end_ts))) {
 | 
					  } else if (OB_FAIL(ObBackupJobOperator::advance_job_status(sql_proxy, *job_attr_, next_status, result, end_ts))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to advance job status", K(ret), K(*job_attr_), K(next_status), K(result), K(end_ts));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to advance job status", K(ret), KPC(job_attr_), K(next_status), K(result), K(end_ts));
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -85,7 +85,7 @@ int ObBackupSetTaskMgr::init(
 | 
				
			|||||||
    desc.backup_type_ = job_attr.backup_type_;
 | 
					    desc.backup_type_ = job_attr.backup_type_;
 | 
				
			||||||
    if (OB_FAIL(ObBackupStorageInfoOperator::get_backup_dest(sql_proxy, job_attr.tenant_id_, 
 | 
					    if (OB_FAIL(ObBackupStorageInfoOperator::get_backup_dest(sql_proxy, job_attr.tenant_id_, 
 | 
				
			||||||
        job_attr.backup_path_, backup_dest))) {
 | 
					        job_attr.backup_path_, backup_dest))) {
 | 
				
			||||||
      LOG_WARN("fail to get backup dest", K(ret), K(*job_attr_));
 | 
					      LOG_WARN("fail to get backup dest", K(ret), K(job_attr));
 | 
				
			||||||
    } else if (OB_FAIL(store_.init(backup_dest, desc))) {
 | 
					    } else if (OB_FAIL(store_.init(backup_dest, desc))) {
 | 
				
			||||||
      LOG_WARN("fail to init backup data store", K(ret));
 | 
					      LOG_WARN("fail to init backup data store", K(ret));
 | 
				
			||||||
    } 
 | 
					    } 
 | 
				
			||||||
@ -198,7 +198,7 @@ int ObBackupSetTaskMgr::persist_sys_ls_task_()
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  if (OB_FAIL(ret)) {
 | 
					  if (OB_FAIL(ret)) {
 | 
				
			||||||
  } else if (OB_FAIL(write_backup_set_placeholder(true/*start*/))) {
 | 
					  } else if (OB_FAIL(write_backup_set_placeholder(true/*start*/))) {
 | 
				
			||||||
    LOG_WARN("fail to write backup set start placeholder", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("fail to write backup set start placeholder", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(trans_.start(sql_proxy_, meta_tenant_id_))) {
 | 
					  } else if (OB_FAIL(trans_.start(sql_proxy_, meta_tenant_id_))) {
 | 
				
			||||||
    LOG_WARN("fail to start trans", K(ret), K(meta_tenant_id_));
 | 
					    LOG_WARN("fail to start trans", K(ret), K(meta_tenant_id_));
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
@ -357,7 +357,7 @@ int ObBackupSetTaskMgr::backup_sys_meta_()
 | 
				
			|||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
      share::ObBackupDataTaskType type(share::ObBackupDataTaskType::Type::BACKUP_META);
 | 
					      share::ObBackupDataTaskType type(share::ObBackupDataTaskType::Type::BACKUP_META);
 | 
				
			||||||
      if (OB_FAIL(generate_ls_tasks_(ls_ids, type))) {
 | 
					      if (OB_FAIL(generate_ls_tasks_(ls_ids, type))) {
 | 
				
			||||||
        LOG_WARN("failed to generate log stream tasks", K(ret), K(*job_attr_), K(ls_ids));
 | 
					        LOG_WARN("failed to generate log stream tasks", K(ret), KPC(job_attr_), K(ls_ids));
 | 
				
			||||||
      } else if (OB_FAIL(advance_status_(trans_, next_status_))) {
 | 
					      } else if (OB_FAIL(advance_status_(trans_, next_status_))) {
 | 
				
			||||||
        LOG_WARN("fail to advance status", K(ret), K(next_status_));
 | 
					        LOG_WARN("fail to advance status", K(ret), K(next_status_));
 | 
				
			||||||
      } 
 | 
					      } 
 | 
				
			||||||
@ -475,7 +475,7 @@ int ObBackupSetTaskMgr::change_meta_turn_()
 | 
				
			|||||||
      LOG_WARN("fail to delete ls task", K(ret), "tenant_id", set_task_attr_.tenant_id_, "job_id", 
 | 
					      LOG_WARN("fail to delete ls task", K(ret), "tenant_id", set_task_attr_.tenant_id_, "job_id", 
 | 
				
			||||||
          set_task_attr_.job_id_);
 | 
					          set_task_attr_.job_id_);
 | 
				
			||||||
    } else if (OB_FAIL(generate_ls_tasks_(ls_ids, type))) {
 | 
					    } else if (OB_FAIL(generate_ls_tasks_(ls_ids, type))) {
 | 
				
			||||||
      LOG_WARN("failed to generate log stream tasks", K(ret), K(*job_attr_), K(ls_ids));
 | 
					      LOG_WARN("failed to generate log stream tasks", K(ret), KPC(job_attr_), K(ls_ids));
 | 
				
			||||||
    } else if (OB_FAIL(ObBackupTaskOperator::update_meta_turn_id(trans_, set_task_attr_.task_id_, 
 | 
					    } else if (OB_FAIL(ObBackupTaskOperator::update_meta_turn_id(trans_, set_task_attr_.task_id_, 
 | 
				
			||||||
        set_task_attr_.tenant_id_, next_meta_turn_id))) {
 | 
					        set_task_attr_.tenant_id_, next_meta_turn_id))) {
 | 
				
			||||||
      LOG_WARN("fail to update meta turn id", K(ret), K(set_task_attr_));
 | 
					      LOG_WARN("fail to update meta turn id", K(ret), K(set_task_attr_));
 | 
				
			||||||
@ -508,7 +508,7 @@ int ObBackupSetTaskMgr::merge_ls_meta_infos_(const ObIArray<share::ObBackupLSTas
 | 
				
			|||||||
  ObBackupLSMetaInfosDesc ls_meta_infos;
 | 
					  ObBackupLSMetaInfosDesc ls_meta_infos;
 | 
				
			||||||
  if (OB_FAIL(ObBackupStorageInfoOperator::get_backup_dest(*sql_proxy_, job_attr_->tenant_id_, 
 | 
					  if (OB_FAIL(ObBackupStorageInfoOperator::get_backup_dest(*sql_proxy_, job_attr_->tenant_id_, 
 | 
				
			||||||
    job_attr_->backup_path_, backup_dest))) {
 | 
					    job_attr_->backup_path_, backup_dest))) {
 | 
				
			||||||
    LOG_WARN("fail to get backup dest", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("fail to get backup dest", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
    ARRAY_FOREACH_X(ls_tasks, i, cnt, OB_SUCC(ret)) {
 | 
					    ARRAY_FOREACH_X(ls_tasks, i, cnt, OB_SUCC(ret)) {
 | 
				
			||||||
      const ObBackupLSTaskAttr &ls_task_attr = ls_tasks.at(i);
 | 
					      const ObBackupLSTaskAttr &ls_task_attr = ls_tasks.at(i);
 | 
				
			||||||
@ -868,7 +868,7 @@ int ObBackupSetTaskMgr::backup_data_()
 | 
				
			|||||||
      if (OB_FAIL(ObBackupDataScheduler::get_scn(*sql_proxy_, job_attr_->tenant_id_, end_scn))) {
 | 
					      if (OB_FAIL(ObBackupDataScheduler::get_scn(*sql_proxy_, job_attr_->tenant_id_, end_scn))) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to get end ts", K(ret), "tenant_id", job_attr_->tenant_id_);
 | 
					        LOG_WARN("[DATA_BACKUP]failed to get end ts", K(ret), "tenant_id", job_attr_->tenant_id_);
 | 
				
			||||||
      } else if (OB_FAIL(build_index_(build_index_attr, set_task_attr_.data_turn_id_, set_task_attr_.task_id_, finish_build_index))) {
 | 
					      } else if (OB_FAIL(build_index_(build_index_attr, set_task_attr_.data_turn_id_, set_task_attr_.task_id_, finish_build_index))) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to wait build index", K(ret), K(set_task_attr_), K(*build_index_attr));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to wait build index", K(ret), K(set_task_attr_), KPC(build_index_attr));
 | 
				
			||||||
      } else if (!finish_build_index) {
 | 
					      } else if (!finish_build_index) {
 | 
				
			||||||
      } else if (OB_FAIL(check_change_task_turn_(ls_task, need_change_turn, tablets_to_ls, new_ls_array))) {
 | 
					      } else if (OB_FAIL(check_change_task_turn_(ls_task, need_change_turn, tablets_to_ls, new_ls_array))) {
 | 
				
			||||||
        LOG_WARN("[DATA_BACKUP]failed to check change task turn", K(ret), K(set_task_attr_));
 | 
					        LOG_WARN("[DATA_BACKUP]failed to check change task turn", K(ret), K(set_task_attr_));
 | 
				
			||||||
@ -996,7 +996,7 @@ int ObBackupSetTaskMgr::update_inner_task_(
 | 
				
			|||||||
  // TODO use another error code to determine change turn in 4.1
 | 
					  // TODO use another error code to determine change turn in 4.1
 | 
				
			||||||
    } else if (OB_FAIL(ObBackupDataLSTaskMgr::redo_ls_task(
 | 
					    } else if (OB_FAIL(ObBackupDataLSTaskMgr::redo_ls_task(
 | 
				
			||||||
        *lease_service_, trans_, *ls_attr, ls_attr->start_turn_id_, set_task_attr_.data_turn_id_, 0/*retry_id*/))) {
 | 
					        *lease_service_, trans_, *ls_attr, ls_attr->start_turn_id_, set_task_attr_.data_turn_id_, 0/*retry_id*/))) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to update ls task result to success", K(ret), K(*ls_attr));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to update ls task result to success", K(ret), KPC(ls_attr));
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  } 
 | 
					  } 
 | 
				
			||||||
  ObBackupDataTaskType type;
 | 
					  ObBackupDataTaskType type;
 | 
				
			||||||
@ -1076,7 +1076,7 @@ int ObBackupSetTaskMgr::build_index_(
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
    ret = OB_ERR_UNEXPECTED;
 | 
					    ret = OB_ERR_UNEXPECTED;
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]unexpected err", K(ret), K(*build_index_attr));
 | 
					    LOG_WARN("[DATA_BACKUP]unexpected err", K(ret), KPC(build_index_attr));
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@ -1503,15 +1503,15 @@ int ObBackupSetTaskMgr::write_extern_infos()
 | 
				
			|||||||
      (ObExternBackupSetInfoDesc, backup_set_info)) {
 | 
					      (ObExternBackupSetInfoDesc, backup_set_info)) {
 | 
				
			||||||
    if (OB_FAIL(ret)) {
 | 
					    if (OB_FAIL(ret)) {
 | 
				
			||||||
    } else if (OB_FAIL(write_extern_locality_info_(locality_info))) {
 | 
					    } else if (OB_FAIL(write_extern_locality_info_(locality_info))) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to write extern tenant locality info", K(ret), K(*job_attr_));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to write extern tenant locality info", K(ret), KPC(job_attr_));
 | 
				
			||||||
    } else if (OB_FAIL(write_backup_set_info_(set_task_attr_, backup_set_info))) { 
 | 
					    } else if (OB_FAIL(write_backup_set_info_(set_task_attr_, backup_set_info))) { 
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to write backup set info", K(ret), K(*job_attr_));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to write backup set info", K(ret), KPC(job_attr_));
 | 
				
			||||||
    } else if (OB_FAIL(write_tenant_backup_set_infos_())) {
 | 
					    } else if (OB_FAIL(write_tenant_backup_set_infos_())) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to write tenant backup set infos", K(ret));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to write tenant backup set infos", K(ret));
 | 
				
			||||||
    } else if (OB_FAIL(write_extern_diagnose_info_(locality_info, backup_set_info))) { // 
 | 
					    } else if (OB_FAIL(write_extern_diagnose_info_(locality_info, backup_set_info))) { // 
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to write extern tenant diagnose info", K(ret), K(*job_attr_));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to write extern tenant diagnose info", K(ret), KPC(job_attr_));
 | 
				
			||||||
    } else if (OB_FAIL(write_backup_set_placeholder(false/*finish job*/))) {
 | 
					    } else if (OB_FAIL(write_backup_set_placeholder(false/*finish job*/))) {
 | 
				
			||||||
      LOG_WARN("[DATA_BACKUP]failed to write backup set finish placeholder", K(ret), K(*job_attr_));
 | 
					      LOG_WARN("[DATA_BACKUP]failed to write backup set finish placeholder", K(ret), KPC(job_attr_));
 | 
				
			||||||
    } 
 | 
					    } 
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  return ret;
 | 
					  return ret;
 | 
				
			||||||
@ -1527,12 +1527,12 @@ int ObBackupSetTaskMgr::write_backup_set_info_(
 | 
				
			|||||||
  ObBackupSetFileDesc &backup_set_file = backup_set_info.backup_set_file_;
 | 
					  ObBackupSetFileDesc &backup_set_file = backup_set_info.backup_set_file_;
 | 
				
			||||||
  ObBackupDest backup_dest;
 | 
					  ObBackupDest backup_dest;
 | 
				
			||||||
  if (OB_FAIL(ObBackupStorageInfoOperator::get_backup_dest(*sql_proxy_, job_attr_->tenant_id_, set_task_attr.backup_path_, backup_dest))) {
 | 
					  if (OB_FAIL(ObBackupStorageInfoOperator::get_backup_dest(*sql_proxy_, job_attr_->tenant_id_, set_task_attr.backup_path_, backup_dest))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]fail to get backup dest", K(ret), K(*job_attr_)); 
 | 
					    LOG_WARN("[DATA_BACKUP]fail to get backup dest", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupStorageInfoOperator::get_dest_id(*sql_proxy_, job_attr_->tenant_id_, backup_dest, dest_id))) {
 | 
					  } else if (OB_FAIL(ObBackupStorageInfoOperator::get_dest_id(*sql_proxy_, job_attr_->tenant_id_, backup_dest, dest_id))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to get dest id", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to get dest id", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupSetFileOperator::get_backup_set_file(*sql_proxy_, false/*for update*/, job_attr_->backup_set_id_, job_attr_->incarnation_id_, 
 | 
					  } else if (OB_FAIL(ObBackupSetFileOperator::get_backup_set_file(*sql_proxy_, false/*for update*/, job_attr_->backup_set_id_, job_attr_->incarnation_id_, 
 | 
				
			||||||
      job_attr_->tenant_id_, dest_id, backup_set_file))) {
 | 
					      job_attr_->tenant_id_, dest_id, backup_set_file))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to get backup set", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to get backup set", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (cluster_version != backup_set_file.tenant_compatible_) {
 | 
					  } else if (cluster_version != backup_set_file.tenant_compatible_) {
 | 
				
			||||||
    ret = OB_NOT_SUPPORTED;
 | 
					    ret = OB_NOT_SUPPORTED;
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]when cluster_version change, backup can't continue", K(ret), K(cluster_version), K(backup_set_file.tenant_compatible_));
 | 
					    LOG_WARN("[DATA_BACKUP]when cluster_version change, backup can't continue", K(ret), K(cluster_version), K(backup_set_file.tenant_compatible_));
 | 
				
			||||||
@ -1663,7 +1663,7 @@ int ObBackupSetTaskMgr::write_tenant_backup_set_infos_()
 | 
				
			|||||||
  int ret = OB_SUCCESS;
 | 
					  int ret = OB_SUCCESS;
 | 
				
			||||||
  share::ObTenantBackupSetInfosDesc tenant_backup_set_infos;
 | 
					  share::ObTenantBackupSetInfosDesc tenant_backup_set_infos;
 | 
				
			||||||
  if (OB_FAIL(ObBackupSetFileOperator::get_backup_set_files(*sql_proxy_, job_attr_->tenant_id_, tenant_backup_set_infos))) {
 | 
					  if (OB_FAIL(ObBackupSetFileOperator::get_backup_set_files(*sql_proxy_, job_attr_->tenant_id_, tenant_backup_set_infos))) {
 | 
				
			||||||
    LOG_WARN("[DATA_BACKUP]failed to get backup set", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("[DATA_BACKUP]failed to get backup set", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (!tenant_backup_set_infos.is_valid()) {
 | 
					  } else if (!tenant_backup_set_infos.is_valid()) {
 | 
				
			||||||
    ret = OB_ERR_UNEXPECTED;
 | 
					    ret = OB_ERR_UNEXPECTED;
 | 
				
			||||||
    LOG_WARN("invalid tenant backup set infos", K(ret), K(tenant_backup_set_infos));
 | 
					    LOG_WARN("invalid tenant backup set infos", K(ret), K(tenant_backup_set_infos));
 | 
				
			||||||
@ -1685,12 +1685,12 @@ int ObBackupSetTaskMgr::set_backup_set_files_failed_(ObMySQLTransaction &trans)
 | 
				
			|||||||
  ObBackupSetFileDesc backup_set_file;
 | 
					  ObBackupSetFileDesc backup_set_file;
 | 
				
			||||||
  ObBackupDest backup_dest;
 | 
					  ObBackupDest backup_dest;
 | 
				
			||||||
  if (OB_FAIL(ObBackupStorageInfoOperator::get_backup_dest(trans, job_attr_->tenant_id_, set_task_attr_.backup_path_, backup_dest))) {
 | 
					  if (OB_FAIL(ObBackupStorageInfoOperator::get_backup_dest(trans, job_attr_->tenant_id_, set_task_attr_.backup_path_, backup_dest))) {
 | 
				
			||||||
    LOG_WARN("fail to get backup dest", K(ret), K(*job_attr_)); 
 | 
					    LOG_WARN("fail to get backup dest", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupStorageInfoOperator::get_dest_id(trans, job_attr_->tenant_id_, backup_dest, dest_id))) {
 | 
					  } else if (OB_FAIL(ObBackupStorageInfoOperator::get_dest_id(trans, job_attr_->tenant_id_, backup_dest, dest_id))) {
 | 
				
			||||||
    LOG_WARN("failed to get dest id", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("failed to get dest id", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else if (OB_FAIL(ObBackupSetFileOperator::get_backup_set_file(trans, true/*for update*/, job_attr_->backup_set_id_, job_attr_->incarnation_id_, 
 | 
					  } else if (OB_FAIL(ObBackupSetFileOperator::get_backup_set_file(trans, true/*for update*/, job_attr_->backup_set_id_, job_attr_->incarnation_id_, 
 | 
				
			||||||
      job_attr_->tenant_id_, dest_id, backup_set_file))) {
 | 
					      job_attr_->tenant_id_, dest_id, backup_set_file))) {
 | 
				
			||||||
    LOG_WARN("failed to get backup set", K(ret), K(*job_attr_));
 | 
					    LOG_WARN("failed to get backup set", K(ret), KPC(job_attr_));
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
    backup_set_file.backup_set_id_ = job_attr_->backup_set_id_;
 | 
					    backup_set_file.backup_set_id_ = job_attr_->backup_set_id_;
 | 
				
			||||||
    backup_set_file.incarnation_ = job_attr_->incarnation_id_;
 | 
					    backup_set_file.incarnation_ = job_attr_->incarnation_id_;
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user