From d7e42213b0426e38754c5b1b2eacb280c9630e19 Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Tue, 8 Mar 2016 14:14:05 -0800 Subject: [PATCH] rgw: handle error when fetching data log changes Signed-off-by: Yehuda Sadeh --- src/rgw/rgw_data_sync.cc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/rgw/rgw_data_sync.cc b/src/rgw/rgw_data_sync.cc index 5024820eb751a..437cbc656107c 100644 --- a/src/rgw/rgw_data_sync.cc +++ b/src/rgw/rgw_data_sync.cc @@ -936,6 +936,12 @@ public: if (datalog_marker > sync_marker.marker) { spawned_keys.clear(); yield call(new RGWReadRemoteDataLogShardCR(sync_env, shard_id, &sync_marker.marker, &log_entries, &truncated)); + if (retcode < 0) { + ldout(sync_env->cct, 0) << "ERROR: failed to read remote data log info: ret=" << retcode << dendl; + lease_cr->go_down(); + drain_all(); + return set_cr_error(retcode); + } for (log_iter = log_entries.begin(); log_iter != log_entries.end(); ++log_iter) { ldout(sync_env->cct, 20) << __func__ << ":" << __LINE__ << ": shard_id=" << shard_id << " log_entry: " << log_iter->log_id << ":" << log_iter->log_timestamp << ":" << log_iter->entry.key << dendl; if (!marker_tracker->index_key_to_marker(log_iter->entry.key, log_iter->log_id)) { -- 2.39.5