]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mon: prevent pool with snapshot state from being used as a tier
authorSage Weil <sage@redhat.com>
Wed, 29 Apr 2015 19:34:25 +0000 (12:34 -0700)
committerNathan Cutler <ncutler@suse.com>
Mon, 5 Oct 2015 13:14:24 +0000 (15:14 +0200)
commitd7f53442260dcfc92e7afa8bba2dd116c15e030d
treef6a8eea155cf75ac50329985cb6b7b31e794cd8e
parent028da252d85733fcc7d8495750b9ae97043cb0dd
mon: prevent pool with snapshot state from being used as a tier

If we add a pool with snap state as a tier the snap state gets clobbered
by OSDMap::Incremental::propogate_snaps_to_tiers(), and may prevent OSDs
from starting.  Disallow this.

Include a test.

Fixes: #11493
Backport: hammer, giant, firefly
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit bbec53edf9e585af4e20bbc9ba9057d6fdfda342)

Conflicts:
qa/workunits/cephtool/test.sh
           properly co-exist with "# make sure we can't create an ec pool tier"
src/mon/OSDMonitor.cc
           properly co-exist with preceding "if (tp->ec_pool())"
        (The changes to both files would have applied cleanly if
        https://github.com/ceph/ceph/pull/5389 had not been merged first.)
qa/workunits/cephtool/test.sh
src/mon/OSDMonitor.cc