From: Igor Fedotov Date: Fri, 2 Dec 2022 15:31:15 +0000 (+0300) Subject: mon: avoid exception when setting require-osd-release more than 2 X-Git-Tag: v16.2.14~28^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=aa6aaab36d97a49cf9fbf544f9c5fbdaf85c3143;p=ceph.git mon: avoid exception when setting require-osd-release more than 2 versions up. Request for additional confirmation instead. Fixes: https://tracker.ceph.com/issues/58156 Signed-off-by: Igor Fedotov --- diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index 11dbaf7d7d0..35de9c47f31 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -11598,7 +11598,13 @@ bool OSDMonitor::prepare_command_impl(MonOpRequestRef op, err = 0; goto reply; } - ceph_assert(osdmap.require_osd_release >= ceph_release_t::luminous); + if (osdmap.require_osd_release < ceph_release_t::luminous && !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.";