]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mdsmon: don't add pool application metadata until running fully-luminous
authorGreg Farnum <gfarnum@redhat.com>
Wed, 9 Aug 2017 20:46:30 +0000 (13:46 -0700)
committerSage Weil <sage@redhat.com>
Fri, 11 Aug 2017 02:30:24 +0000 (22:30 -0400)
Signed-off-by: Greg Farnum <gfarnum@redhat.com>
(cherry picked from commit bcd3554bc5a3965077af655498fd434910f13040)

src/mon/FSCommands.cc
src/mon/OSDMonitor.cc

index 4b0445fb1347e187dce238693df22e7b4af85094..265a170f7dc49fd026a2e241eb1460ca1f2952b9 100644 (file)
@@ -194,10 +194,13 @@ class FsNewHandler : public FileSystemCommandHandler
       return r;
     }
 
-    mon->osdmon()->do_application_enable(data,
-                                         pg_pool_t::APPLICATION_NAME_CEPHFS);
-    mon->osdmon()->do_application_enable(metadata,
-                                         pg_pool_t::APPLICATION_NAME_CEPHFS);
+    if (mon->osdmon()->osdmap.require_osd_release >= CEPH_RELEASE_LUMINOUS ||
+       mon->osdmon()->pending_inc.new_require_osd_release >= CEPH_RELEASE_LUMINOUS) {
+      mon->osdmon()->do_application_enable(data,
+                                          pg_pool_t::APPLICATION_NAME_CEPHFS);
+      mon->osdmon()->do_application_enable(metadata,
+                                          pg_pool_t::APPLICATION_NAME_CEPHFS);
+    }
 
     // All checks passed, go ahead and create.
     fsmap.create_filesystem(fs_name, metadata, data,
index d1c1766c2800cd05685b93985d2d0f6dee19cb71..780a76b303ed6e2e5d01fe0567e174d686c61dad 100644 (file)
@@ -3161,6 +3161,9 @@ void OSDMonitor::do_application_enable(int64_t pool_id,
   dout(20) << __func__ << ": pool_id=" << pool_id << ", app_name=" << app_name
            << dendl;
 
+  assert(osdmap.require_osd_release >= CEPH_RELEASE_LUMINOUS ||
+        pending_inc.new_require_osd_release >= CEPH_RELEASE_LUMINOUS);
+
   auto pp = osdmap.get_pg_pool(pool_id);
   assert(pp != nullptr);