From 823513f88d896254a8f08c877279c442221f845f Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 9 Dec 2009 10:17:30 -0800 Subject: [PATCH] osd: fix decoding for old osdmaps (pre osd hb change) Including ugly hack to work around badly encoded v3 maps --- src/osd/OSDMap.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/osd/OSDMap.h b/src/osd/OSDMap.h index 139a179b4bb1f..21176dfb0c451 100644 --- a/src/osd/OSDMap.h +++ b/src/osd/OSDMap.h @@ -624,7 +624,15 @@ private: crush.decode(cblp); // extended - ::decode(osd_hb_addr, p); + if (v >= 3) + ::decode(osd_hb_addr, p); + if (v < 3 || (osd_hb_addr.empty() && osd_addr.size())) { + osd_hb_addr.resize(osd_addr.size()); + for (unsigned i=0; i