]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
rbd-mirror: prevent creation of clones when parents are syncing
authorJason Dillaman <dillaman@redhat.com>
Wed, 12 Sep 2018 18:04:49 +0000 (14:04 -0400)
committerJason Dillaman <dillaman@redhat.com>
Wed, 12 Sep 2018 18:04:49 +0000 (14:04 -0400)
commitf1eb1c1992b5b09d4aca390b80e81d1f9e59e0f1
treee2ac1ab913774365fafcfbbc6863ddb2acd420b1
parentf9d57a0b55c436d871a0e7667dd573a596c81af3
rbd-mirror: prevent creation of clones when parents are syncing

This will prevent a possible race condition where a thrashing rbd-mirror
daemon in mid-sync with a parent image would result in the deletion of
all snapshots when it restarts the sync.

Fixes: http://tracker.ceph.com/issues/24140
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
13 files changed:
src/test/rbd_mirror/image_replayer/test_mock_BootstrapRequest.cc
src/test/rbd_mirror/image_replayer/test_mock_CreateImageRequest.cc
src/test/rbd_mirror/test_mock_ImageReplayer.cc
src/tools/rbd_mirror/CMakeLists.txt
src/tools/rbd_mirror/ImageReplayer.cc
src/tools/rbd_mirror/image_replayer/BootstrapRequest.cc
src/tools/rbd_mirror/image_replayer/BootstrapRequest.h
src/tools/rbd_mirror/image_replayer/CreateImageRequest.cc
src/tools/rbd_mirror/image_replayer/CreateImageRequest.h
src/tools/rbd_mirror/image_replayer/PrepareRemoteImageRequest.cc
src/tools/rbd_mirror/image_replayer/PrepareRemoteImageRequest.h
src/tools/rbd_mirror/image_replayer/Utils.cc [new file with mode: 0644]
src/tools/rbd_mirror/image_replayer/Utils.h [new file with mode: 0644]