fix admin merge about expected_epoch == -1
This commit is contained in:
parent
98d35eeeb0
commit
b7d2c5af75
@ -449,7 +449,7 @@ int ObMajorFreezeHelper::do_one_tenant_admin_merge(
|
||||
LOG_WARN("tenant_admin_merge rpc failed", KR(ret), K(tenant_id), K(leader), K(admin_type));
|
||||
} else if (FALSE_IT(ret = resp.err_code_)) {
|
||||
} else if (OB_FAIL(ret)) {
|
||||
if (OB_LEADER_NOT_EXIST == ret) {
|
||||
if (OB_LEADER_NOT_EXIST == ret || OB_EAGAIN == ret) {
|
||||
const int64_t RESERVED_TIME_US = 600 * 1000; // 600 ms
|
||||
const int64_t timeout_remain_us = THIS_WORKER.get_timeout_remain();
|
||||
const int64_t idle_time_us = 200 * 1000 * (i + 1);
|
||||
|
@ -249,7 +249,10 @@ int ObTenantMajorFreeze::suspend_merge()
|
||||
LOG_WARN("fail to try reload zone_merge_mgr", KR(ret), K_(tenant_id));
|
||||
} else {
|
||||
const int64_t expected_epoch = merge_scheduler_.get_epoch();
|
||||
if (OB_FAIL(zone_merge_mgr_.suspend_merge(expected_epoch))) {
|
||||
if (-1 == expected_epoch) {
|
||||
ret = OB_EAGAIN;
|
||||
LOG_WARN("epoch has not been updated, will retry", KR(ret), K_(tenant_id));
|
||||
} else if (OB_FAIL(zone_merge_mgr_.suspend_merge(expected_epoch))) {
|
||||
LOG_WARN("fail to suspend merge", KR(ret), K_(tenant_id), K(expected_epoch));
|
||||
}
|
||||
}
|
||||
@ -269,7 +272,10 @@ int ObTenantMajorFreeze::resume_merge()
|
||||
LOG_WARN("fail to try reload zone_merge_mgr", KR(ret), K_(tenant_id));
|
||||
} else {
|
||||
const int64_t expected_epoch = merge_scheduler_.get_epoch();
|
||||
if (OB_FAIL(zone_merge_mgr_.resume_merge(expected_epoch))) {
|
||||
if (-1 == expected_epoch) {
|
||||
ret = OB_EAGAIN;
|
||||
LOG_WARN("epoch has not been updated, will retry", KR(ret), K_(tenant_id));
|
||||
} else if (OB_FAIL(zone_merge_mgr_.resume_merge(expected_epoch))) {
|
||||
LOG_WARN("fail to resume merge", KR(ret), K_(tenant_id), K(expected_epoch));
|
||||
}
|
||||
}
|
||||
@ -290,7 +296,10 @@ int ObTenantMajorFreeze::clear_merge_error()
|
||||
LOG_WARN("fail to try reload zone_merge_mgr", KR(ret), K_(tenant_id));
|
||||
} else {
|
||||
const int64_t expected_epoch = merge_scheduler_.get_epoch();
|
||||
if (OB_FAIL(ObTabletMetaTableCompactionOperator::batch_update_status(tenant_id_,
|
||||
if (-1 == expected_epoch) {
|
||||
ret = OB_EAGAIN;
|
||||
LOG_WARN("epoch has not been updated, will retry", KR(ret), K_(tenant_id));
|
||||
} else if (OB_FAIL(ObTabletMetaTableCompactionOperator::batch_update_status(tenant_id_,
|
||||
expected_epoch))) {
|
||||
LOG_WARN("fail to batch update status", KR(ret), K_(tenant_id), K(expected_epoch));
|
||||
} else if (OB_FAIL(zone_merge_mgr_.set_merge_error(error_type, expected_epoch))) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user