encode(placement_rule, bl);
encode(has_instance_obj, bl);
encode(quota, bl);
- encode(layout.current_index.layout.normal.num_shards, bl);
- encode(layout.current_index.layout.normal.hash_type, bl);
encode(requester_pays, bl);
encode(owner.tenant, bl);
encode(has_website, bl);
if (has_website) {
encode(website_conf, bl);
}
- encode((uint32_t)layout.current_index.layout.type, bl);
encode(swift_versioning, bl);
if (swift_versioning) {
encode(swift_ver_location, bl);
decode(has_instance_obj, bl);
if (struct_v >= 9)
decode(quota, bl);
- if (struct_v >= 10)
+ static constexpr uint8_t new_layout_v = 22;
+ if (struct_v >= 10 && struct_v < new_layout_v)
decode(layout.current_index.layout.normal.num_shards, bl);
- if (struct_v >= 11)
+ if (struct_v >= 11 && struct_v < new_layout_v)
decode(layout.current_index.layout.normal.hash_type, bl);
if (struct_v >= 12)
decode(requester_pays, bl);
website_conf = RGWBucketWebsiteConf();
}
}
- if (struct_v >= 15) {
+ if (struct_v >= 15 && struct_v < new_layout_v) {
uint32_t it;
decode(it, bl);
layout.current_index.layout.type = (rgw::BucketIndexType)it;