]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: use HAMMER_0_94_4 feature to require sufficiently new hammer
authorSage Weil <sage@redhat.com>
Thu, 27 Aug 2015 18:03:49 +0000 (14:03 -0400)
committerSage Weil <sage@redhat.com>
Thu, 27 Aug 2015 18:11:23 +0000 (14:11 -0400)
- Do not allow post-hammer OSDs to start if the running hammer is
not a new enough hammer.
- Do not allow pre-hammer or old hammer OSDs to start once
post-hammer OSDs are in the cluster.

Signed-off-by: Sage Weil <sage@redhat.com>
src/mon/OSDMonitor.cc

index 25cf3c10e95e4ec7aa0f68a4d6899c037b0dd8c6..572d9c897dcfb3693cb6d1589b85e9d0a4da9b3c 100644 (file)
@@ -1871,19 +1871,19 @@ bool OSDMonitor::preprocess_boot(MonOpRequestRef op)
   }
 
   // make sure upgrades stop at hammer
-  //  * OSD_PROXY_FEATURES is the last pre-hammer feature
+  //  * HAMMER_0_94_4 is the required hammer feature
   //  * MON_METADATA is the first post-hammer feature
   if (osdmap.get_num_up_osds() > 0) {
     if ((m->osd_features & CEPH_FEATURE_MON_METADATA) &&
-       !(osdmap.get_up_osd_features() & CEPH_FEATURE_OSD_PROXY_FEATURES)) {
+       !(osdmap.get_up_osd_features() & CEPH_FEATURE_HAMMER_0_94_4)) {
       mon->clog->info() << "disallowing boot of post-hammer OSD "
                        << m->get_orig_source_inst()
-                       << " because one or more up OSDs is pre-hammer\n";
+                       << " because one or more up OSDs is pre-hammer v0.94.4\n";
       goto ignore;
     }
-    if (!(m->osd_features & CEPH_FEATURE_OSD_PROXY_FEATURES) &&
+    if (!(m->osd_features & CEPH_FEATURE_HAMMER_0_94_4) &&
        (osdmap.get_up_osd_features() & CEPH_FEATURE_MON_METADATA)) {
-      mon->clog->info() << "disallowing boot of pre-hammer OSD "
+      mon->clog->info() << "disallowing boot of pre-hammer v0.94.4 OSD "
                        << m->get_orig_source_inst()
                        << " because all up OSDs are post-hammer\n";
       goto ignore;