]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: avoid exception when setting require-osd-release more than 2 49199/head
authorIgor Fedotov <igor.fedotov@croit.io>
Fri, 2 Dec 2022 15:31:15 +0000 (18:31 +0300)
committerIgor Fedotov <igor.fedotov@croit.io>
Fri, 2 Dec 2022 15:31:15 +0000 (18:31 +0300)
versions up.

Request for additional confirmation instead.

Fixes: https://tracker.ceph.com/issues/58156
Signed-off-by: Igor Fedotov <igor.fedotov@croit.io>
src/mon/OSDMonitor.cc

index e9e7ce72a8b1d76689844f8ab2f110c9aa17031b..3603d2cb7e8a32c83742d44e8148713725b43e8d 100644 (file)
@@ -11601,7 +11601,13 @@ bool OSDMonitor::prepare_command_impl(MonOpRequestRef op,
       err = 0;
       goto reply;
     }
-    ceph_assert(osdmap.require_osd_release >= ceph_release_t::pacific);
+    if (osdmap.require_osd_release < ceph_release_t::pacific && !sure) {
+      ss << "Not advisable to continue since current 'require_osd_release' "
+         << "refers to a very old Ceph release. Pass "
+        << "--yes-i-really-mean-it if you really wish to continue.";
+      err = -EPERM;
+      goto reply;
+    }
     if (!osdmap.get_num_up_osds() && !sure) {
       ss << "Not advisable to continue since no OSDs are up. Pass "
         << "--yes-i-really-mean-it if you really wish to continue.";