summaryrefslogtreecommitdiffstats
path: root/src/mon/Monitor.h
diff options
context:
space:
mode:
authorLoic Dachary <loic@dachary.org>2014-02-12 16:49:32 +0100
committerLoic Dachary <loic@dachary.org>2014-02-13 09:52:23 +0100
commit8dea58843c2fd633c1b9eaf53a19e9294a59aed9 (patch)
tree8c506c767a03167dc525ba36b49d897076b502bc /src/mon/Monitor.h
parentmon: add --mon-advanced-debug-mode (diff)
downloadceph-8dea58843c2fd633c1b9eaf53a19e9294a59aed9.tar.xz
ceph-8dea58843c2fd633c1b9eaf53a19e9294a59aed9.zip
mon: add osdmonitor_prepare_command to the admin socket
It provides a developer path allowing functional tests to modify the pending OSDMap without triggering a PaxosProposal. It can be used as follows: echo '{"prefix":"osdmonitor_prepare_command","prepare":"osd crush tunables","profile":"bobtail"}' | nc -U out/mon.a.asok It will transform the command into: {"prefix":"osd crush tunables","profile":"bobtail"} and feed it to OSDMonitor::prepare_command_impl(). The pending OSDMap won't be proposed because it short circuit PaxosService::dispatch. It will, however, be proposed next time PaxosService::dispatch() gets a chance. It cannot be used via the ceph command line. Signed-off-by: Loic Dachary <loic@dachary.org>
Diffstat (limited to 'src/mon/Monitor.h')
-rw-r--r--src/mon/Monitor.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mon/Monitor.h b/src/mon/Monitor.h
index 47fa6587aa3..d7a165f8879 100644
--- a/src/mon/Monitor.h
+++ b/src/mon/Monitor.h
@@ -620,6 +620,7 @@ public:
const MonCommand *this_cmd);
void _mon_status(Formatter *f, ostream& ss);
void _quorum_status(Formatter *f, ostream& ss);
+ void _osdmonitor_prepare_command(cmdmap_t& cmdmap, ostream& ss);
void _add_bootstrap_peer_hint(string cmd, cmdmap_t& cmdmap, ostream& ss);
void handle_command(class MMonCommand *m);
void handle_route(MRoute *m);