From: Casey Bodley Date: Mon, 23 Jan 2017 21:31:14 +0000 (-0500) Subject: rgw: peer purges mdlog periods before master's oldest X-Git-Tag: v12.0.3~20^2~8 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=6cde60e954e60ff77e93b93e8c5bd7059f6a2644;p=ceph.git rgw: peer purges mdlog periods before master's oldest Signed-off-by: Casey Bodley --- diff --git a/src/rgw/rgw_sync.cc b/src/rgw/rgw_sync.cc index 74097e7f0602..feb2771c3e61 100644 --- a/src/rgw/rgw_sync.cc +++ b/src/rgw/rgw_sync.cc @@ -2699,6 +2699,15 @@ int MetaPeerTrimCR::operate() ldout(cct, 4) << "failed to read mdlog info from master" << dendl; return set_cr_error(retcode); } + + if (mdlog_info.realm_epoch > env.last_trim_epoch + 1) { + // delete any prior mdlog periods + yield spawn(new PurgePeriodLogsCR(env.store, mdlog_info.realm_epoch, + &env.last_trim_epoch), true); + } else { + ldout(cct, 10) << "mdlogs already purged through realm_epoch " + << env.last_trim_epoch << dendl; + } return set_cr_done(); } return 0;