From 5ec27fbcbf70b65f06a77f185b65f057f199cdf9 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 12 Jul 2017 07:30:53 -0400 Subject: [PATCH] mon/MgrStatMonitor: do not crash on luninous dev version upgrades Signed-off-by: Sage Weil --- src/mon/MgrStatMonitor.cc | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/mon/MgrStatMonitor.cc b/src/mon/MgrStatMonitor.cc index 5a81b931276c8..add84e278b72a 100644 --- a/src/mon/MgrStatMonitor.cc +++ b/src/mon/MgrStatMonitor.cc @@ -85,13 +85,18 @@ void MgrStatMonitor::update_from_paxos(bool *need_bootstrap) get_version(version, bl); if (version) { assert(bl.length()); - auto p = bl.begin(); - ::decode(digest, p); - ::decode(health_summary, p); - ::decode(health_detail, p); - ::decode(service_map, p); - dout(10) << __func__ << " v" << version - << " service_map e" << service_map.epoch << dendl; + try { + auto p = bl.begin(); + ::decode(digest, p); + ::decode(health_summary, p); + ::decode(health_detail, p); + ::decode(service_map, p); + dout(10) << __func__ << " v" << version + << " service_map e" << service_map.epoch << dendl; + } + catch (buffer::error& e) { + derr << "failed to decode mgrstat state; luminous dev version?" << dendl; + } } check_subs(); update_logger(); -- 2.39.5