From c66c556852b08e18d409e769eb7bd945c35e43cf Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 23 Nov 2016 13:51:59 -0500 Subject: [PATCH] osd/osd_types: encode pg_pool_t like hammer if features indicate hammer If the target features are missing the new OSDOp encoding, the first feature we added post-hammer, encode like hammer. Signed-off-by: Sage Weil (cherry picked from commit 2f8cfb632823ba4e63eaff394392d6af7979d7c8) --- src/osd/osd_types.cc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/osd/osd_types.cc b/src/osd/osd_types.cc index 55eba9d972d3d..171b3f1734000 100644 --- a/src/osd/osd_types.cc +++ b/src/osd/osd_types.cc @@ -1494,6 +1494,12 @@ void pg_pool_t::encode(bufferlist& bl, uint64_t features) const } uint8_t v = 24; + if (!(features & CEPH_FEATURE_NEW_OSDOP_ENCODING)) { + // this was the first post-hammer thing we added; if it's missing, encode + // like hammer. + v = 21; + } + ENCODE_START(v, 5, bl); ::encode(type, bl); ::encode(size, bl); -- 2.39.5