mon/OSDMonitor: encode canonical full osdmap based on osdmap flags
If the JEWEL or KRAKEN flags aren't set, encode the full map without
those features. This ensure that older OSDs in the cluster will be able
to correctly encode the full map with a matching CRC. At least, that is
true as long as the encoding changes are guarded by those feature bits.
That appears to be true currently, and we plan to ensure that it is true
in the future as well.
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit
5e0daf6642011bf1222c4dc20aa284966fa5df9f)
Conflicts:
src/mon/OSDMonitor.cc: removed reference to kraken
if (!tmp.test_flag(CEPH_OSDMAP_REQUIRE_KRAKEN)) {
dout(10) << __func__ << " encoding without feature SERVER_KRAKEN" << dendl;
features &= ~CEPH_FEATURE_SERVER_KRAKEN;
}