]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/osd_types: encode pg_pool_t like hammer if features indicate hammer
authorSage Weil <sage@redhat.com>
Wed, 23 Nov 2016 18:51:59 +0000 (13:51 -0500)
committerSage Weil <sage@redhat.com>
Wed, 23 Nov 2016 18:51:59 +0000 (13:51 -0500)
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 <sage@redhat.com>
src/osd/osd_types.cc

index 6e7e5a3d30abec8da2a8c9f5afec161ee5517ac9..7c87ee1cbd723cfba48100b0a5b83def49ca765b 100644 (file)
@@ -1489,6 +1489,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);