From a00cd4417596ab89cae4248cc355e412ac9d380e Mon Sep 17 00:00:00 2001 From: Casey Bodley Date: Mon, 8 Aug 2022 16:51:51 -0400 Subject: [PATCH] rgw: DataIncSyncShardCR completes with set_cr_done() Signed-off-by: Casey Bodley --- src/rgw/rgw_data_sync.cc | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/src/rgw/rgw_data_sync.cc b/src/rgw/rgw_data_sync.cc index 60bdddca82d..6b2d0d2cec4 100644 --- a/src/rgw/rgw_data_sync.cc +++ b/src/rgw/rgw_data_sync.cc @@ -1736,28 +1736,25 @@ public: tn->unset_flag(RGW_SNS_FLAG_ACTIVE); - yield { - /* update marker to reflect we're done with full sync */ - sync_marker.state = rgw_data_sync_marker::IncrementalSync; - sync_marker.marker = sync_marker.next_step_marker; - sync_marker.next_step_marker.clear(); - call(new RGWSimpleRadosWriteCR( - sc->env->dpp,sc->env->async_rados, sc->env->svc->sysobj, - rgw_raw_obj(pool, status_oid), sync_marker)); - } + /* update marker to reflect we're done with full sync */ + sync_marker.state = rgw_data_sync_marker::IncrementalSync; + sync_marker.marker = sync_marker.next_step_marker; + sync_marker.next_step_marker.clear(); + yield call(new RGWSimpleRadosWriteCR( + sc->env->dpp,sc->env->async_rados, sc->env->svc->sysobj, + rgw_raw_obj(pool, status_oid), sync_marker)); if (retcode < 0) { tn->log(0, SSTR("ERROR: failed to set sync marker: retcode=" << retcode)); lease_cr->go_down(); drain_all(); return set_cr_error(retcode); } - // clean up full sync index - yield { - const auto& pool = sc->env->svc->zone->get_zone_params().log_pool; - auto oid = full_data_sync_index_shard_oid(sc->source_zone.id, shard_id); - call(new RGWRadosRemoveCR(sc->env->store, {pool, oid})); - } - // keep lease and transition to incremental_sync() + + // clean up full sync index, ignoring errors + yield call(new RGWRadosRemoveCR(sc->env->store, {pool, oid})); + + // transition to incremental sync + return set_cr_done(); } return 0; } -- 2.39.5