[4.0] 如果租户资源不存在,汇报任务应该转换成remove任务,而非失败
This commit is contained in:
@ -314,7 +314,7 @@ int ObLSTableUpdater::batch_process_tasks(
|
|||||||
tenant_id,
|
tenant_id,
|
||||||
ls_id,
|
ls_id,
|
||||||
replica))) {
|
replica))) {
|
||||||
if (OB_LS_NOT_EXIST == ret) { // remove from table if not exist
|
if (OB_LS_NOT_EXIST == ret || OB_TENANT_NOT_IN_SERVER == ret) { // remove from table if not exist
|
||||||
if (OB_FAIL(GCTX.lst_operator_->remove(tenant_id, ls_id, server))) {
|
if (OB_FAIL(GCTX.lst_operator_->remove(tenant_id, ls_id, server))) {
|
||||||
LOG_WARN("fail to remove replica",
|
LOG_WARN("fail to remove replica",
|
||||||
KR(ret), K(tenant_id), K(ls_id), "self_addr", server);
|
KR(ret), K(tenant_id), K(ls_id), "self_addr", server);
|
||||||
|
@ -329,7 +329,9 @@ int ObTabletTableUpdater::generate_tasks_(
|
|||||||
task->get_tablet_id(),
|
task->get_tablet_id(),
|
||||||
replica,
|
replica,
|
||||||
checksum_item))) {
|
checksum_item))) {
|
||||||
if (OB_TABLET_NOT_EXIST == ret || OB_LS_NOT_EXIST == ret) {
|
if (OB_TABLET_NOT_EXIST == ret
|
||||||
|
|| OB_LS_NOT_EXIST == ret
|
||||||
|
|| OB_TENANT_NOT_IN_SERVER == ret) {
|
||||||
ret = OB_SUCCESS;
|
ret = OB_SUCCESS;
|
||||||
// fill primary keys of the replica for removing
|
// fill primary keys of the replica for removing
|
||||||
if (OB_FAIL(replica.init(
|
if (OB_FAIL(replica.init(
|
||||||
|
Reference in New Issue
Block a user