- OSDMap encode and decode translate between the flags and int
representations.
- OSDMap::Incremental only does decode; we do not expect to ever encode
an incremental osdmap for an old osd that sets any of these flags.
- the 'osd set' command still lets you set the jewel and kraken flags,
but not luminous.
- OSDMap::apply_incremental handles the conversion of legacy require flags
to the new field if the jewel or kraken flags have to be set before
starting the osd upgrade.
- clear out the legacy flags when we make the luminous transition only;
until then we keep using the old flag in the encoded and decoded version
(although the require_osd_release field will be accurate in memory in all
cases).
Signed-off-by: Sage Weil <sage@redhat.com>
Start warning once mons are luminous; start erroring once
require_luminous is set in osdmap. Allow a grace period for
mgr to restart or standby to take over before we turn a warning
into an error.
Signed-off-by: Sage Weil <sage@redhat.com>