From: Sage Weil Date: Tue, 16 Feb 2010 23:59:09 +0000 (-0800) Subject: osdmap: decode old osdmaps prior to pool_max stuff X-Git-Tag: v0.19~5 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=ab03efb06cd2a577f83a4ebc74e52e988aead47d;p=ceph.git osdmap: decode old osdmaps prior to pool_max stuff --- diff --git a/src/osd/OSDMap.h b/src/osd/OSDMap.h index cfa28135b766..16aca0dde61b 100644 --- a/src/osd/OSDMap.h +++ b/src/osd/OSDMap.h @@ -198,7 +198,8 @@ public: ::decode(fsid, p); ::decode(epoch, p); ::decode(modified, p); - ::decode(new_pool_max, p); + if (v >= 4) + ::decode(new_pool_max, p); ::decode(new_flags, p); ::decode(fullmap, p); ::decode(crush, p); @@ -606,8 +607,15 @@ private: ::decode(created, p); ::decode(modified, p); + int32_t max_pools; + if (v < 4) { + ::decode(max_pools, p); + } ::decode(pools, p); - ::decode(pool_max, p); + if (v >= 4) + ::decode(pool_max, p); + else + pool_max = max_pools; ::decode(flags, p);