From: Yehuda Sadeh Date: Mon, 14 Mar 2016 01:08:52 +0000 (-0700) Subject: rgw: fix metadata sync backoff X-Git-Tag: v10.1.0~72^2~4 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=5f5adfee894587a8f7074d1669d1ae08a30aa8a9;p=ceph.git rgw: fix metadata sync backoff Need to reset backoff only when we know system is functional end to end. Earlier we reset it after locking succeeded, but that could succeed even if we're not connected to the peer. Signed-off-by: Yehuda Sadeh --- diff --git a/src/rgw/rgw_sync.cc b/src/rgw/rgw_sync.cc index 7fafad3f41e9..4d7c4813a2d3 100644 --- a/src/rgw/rgw_sync.cc +++ b/src/rgw/rgw_sync.cc @@ -1514,7 +1514,6 @@ public: set_sleeping(true); yield; } - *reset_backoff = true; } mdlog_marker = sync_marker.marker; set_marker_tracker(new RGWMetaSyncShardMarkerTrack(sync_env, @@ -1554,6 +1553,7 @@ public: drain_all(); return retcode; } + *reset_backoff = true; /* if we got to this point, all systems function */ ldout(sync_env->cct, 20) << __func__ << ":" << __LINE__ << ": shard_id=" << shard_id << " mdlog_marker=" << mdlog_marker << " sync_marker.marker=" << sync_marker.marker << dendl; if (mdlog_marker > max_marker) { marker = max_marker;