From ec7094cc8b24937ab4d5f74bc93db10240607516 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Piotr=20Da=C5=82ek?= Date: Thu, 20 Jul 2017 09:34:11 +0200 Subject: [PATCH] PGMonitor: return -EPERM on pg force-* commands during upgrade MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Return -EPERM on pg force-* commands during upgrade. Signed-off-by: Piotr Dałek --- src/mon/PGMonitor.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/mon/PGMonitor.cc b/src/mon/PGMonitor.cc index 37324608be5ad..c4091ed08a1ff 100644 --- a/src/mon/PGMonitor.cc +++ b/src/mon/PGMonitor.cc @@ -1063,6 +1063,16 @@ bool PGMonitor::prepare_command(MonOpRequestRef op) } ss << "pg " << pgidstr << " now creating, ok"; goto update; + } else if (prefix == "pg force-recovery" || + prefix == "pg force-backfill" || + prefix == "pg cancel-force-recovery" || + prefix == "pg cancel-force-backfill") { + if (mon->osdmon()->osdmap.require_osd_release >= CEPH_RELEASE_LUMINOUS) { + ss << "you must complete the upgrade and 'ceph osd require-osd-release " + << "luminous' before using forced recovery"; + r = -EPERM; + goto reply; + } } else if (prefix == "pg set_full_ratio" || prefix == "pg set_nearfull_ratio") { if (mon->osdmon()->osdmap.require_osd_release >= CEPH_RELEASE_LUMINOUS) { -- 2.39.5