diff options
Diffstat (limited to 'src/mon')
-rw-r--r-- | src/mon/MDSMonitor.cc | 2 | ||||
-rw-r--r-- | src/mon/Monitor.cc | 19 |
2 files changed, 11 insertions, 10 deletions
diff --git a/src/mon/MDSMonitor.cc b/src/mon/MDSMonitor.cc index 09e07b96f24..2817fea026b 100644 --- a/src/mon/MDSMonitor.cc +++ b/src/mon/MDSMonitor.cc @@ -62,7 +62,7 @@ void MDSMonitor::create_new_fs(MDSMap &m, int metadata_pool, int data_pool) m.data_pg_pools.push_back(data_pool); m.metadata_pg_pool = metadata_pool; m.cas_pg_pool = -1; - m.compat = mdsmap_compat; + m.compat = get_mdsmap_compat_set(); print_map(m); } diff --git a/src/mon/Monitor.cc b/src/mon/Monitor.cc index ac7eeafadb4..b895c2b2a26 100644 --- a/src/mon/Monitor.cc +++ b/src/mon/Monitor.cc @@ -82,12 +82,15 @@ static ostream& _prefix(std::ostream *_dout, Monitor *mon) { << " "; } -const CompatSet::Feature ceph_mon_feature_compat[] = - {END_FEATURE}; -const CompatSet::Feature ceph_mon_feature_ro_compat[] = - {END_FEATURE}; -const CompatSet::Feature ceph_mon_feature_incompat[] = - { CEPH_MON_FEATURE_INCOMPAT_BASE , CompatSet::Feature(0, "")}; +CompatSet get_ceph_mon_feature_compat_set() +{ + CompatSet::FeatureSet ceph_mon_feature_compat; + CompatSet::FeatureSet ceph_mon_feature_ro_compat; + CompatSet::FeatureSet ceph_mon_feature_incompat; + ceph_mon_feature_incompat.insert(CEPH_MON_FEATURE_INCOMPAT_BASE); + return CompatSet(ceph_mon_feature_compat, ceph_mon_feature_ro_compat, + ceph_mon_feature_incompat); +} #ifdef ENABLE_COVERAGE void handle_signal(int signal) @@ -1097,9 +1100,7 @@ int Monitor::mkfs(bufferlist& osdmapbl) } bufferlist features; - CompatSet mon_features(ceph_mon_feature_compat, - ceph_mon_feature_ro_compat, - ceph_mon_feature_incompat); + CompatSet mon_features = get_ceph_mon_feature_compat_set(); mon_features.encode(features); store->put_bl_ss(features, COMPAT_SET_LOC, 0); |