]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
os/bluestore/bluestore_types: bluestore_onode_t: varint encoding 12488/head
authorVarada Kari <varada.kari@sandisk.com>
Thu, 15 Dec 2016 10:03:49 +0000 (15:33 +0530)
committerSage Weil <sage@redhat.com>
Thu, 15 Dec 2016 14:26:36 +0000 (09:26 -0500)
Changing the uint32_t encoding to varint encoding saves around 120 bytes
per onode.

Signed-off-by: Varada Kari <varada.kari@sandisk.com>
src/os/bluestore/bluestore_types.h

index fa9c7b39109fd6ba54877cec10487d0ba0545b27..1cb41596477951910b2fba5fd1b095e82cba3be9 100644 (file)
@@ -683,9 +683,9 @@ struct bluestore_onode_t {
     uint32_t bytes = 0;   ///< encoded bytes
     uint32_t extents = 0; ///< extents
     DENC(shard_info, v, p) {
-      denc(v.offset, p);
-      denc(v.bytes, p);
-      denc(v.extents, p);
+      denc_varint(v.offset, p);
+      denc_varint(v.bytes, p);
+      denc_varint(v.extents, p);
     }
     void dump(Formatter *f) const;
   };
@@ -729,14 +729,14 @@ struct bluestore_onode_t {
 
   DENC(bluestore_onode_t, v, p) {
     DENC_START(1, 1, p);
-    denc(v.nid, p);
-    denc(v.size, p);
+    denc_varint(v.nid, p);
+    denc_varint(v.size, p);
     denc(v.attrs, p);
     denc(v.flags, p);
     denc(v.extent_map_shards, p);
-    denc(v.expected_object_size, p);
-    denc(v.expected_write_size, p);
-    denc(v.alloc_hint_flags, p);
+    denc_varint(v.expected_object_size, p);
+    denc_varint(v.expected_write_size, p);
+    denc_varint(v.alloc_hint_flags, p);
     DENC_FINISH(p);
   }
   void dump(Formatter *f) const;