]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw: bucket sync transitions back to StateInit on OP_SYNCSTOP 23856/head
authorCasey Bodley <cbodley@redhat.com>
Tue, 14 Aug 2018 18:06:40 +0000 (14:06 -0400)
committerNathan Cutler <ncutler@suse.com>
Sun, 2 Sep 2018 11:40:32 +0000 (13:40 +0200)
commit36c30685e77a94ed6b7b87faf1cbfdeec8e0d64d
tree1443c9cf46cf802a7c88f2fdbf8eeb80541255d7
parentaaef501541107fdb57954c0d17fc9469999de0ce
rgw: bucket sync transitions back to StateInit on OP_SYNCSTOP

the handling for OP_SYNCSTOP->OP_RESYNC is incorrect because it's not
safe to continue incremental sync after SYNCSTOP. any changes between
SYNCSTOP and RESYNC will not be written to the bilog, so incremental
sync cannot sync them

SYNCSTOP now transitions back to StateInit, where
RGWInitBucketShardSyncStatusCoroutine will query the remote bilog info
to see if it's still disabled. if so, it deletes the sync status object
and finishes. otherwise, StateInit will transition back to StateFull to
resync the bucket

Fixes: http://tracker.ceph.com/issues/26895
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit d7725a091890cd8e52938c070cc15da3fe57a9e7)
src/rgw/rgw_data_sync.cc