::encode(complete, payload);
::encode(oloc, payload);
::encode(data_included, payload);
- ::encode(recovery_info, payload);
+ ::encode(recovery_info, payload, features);
::encode(recovery_progress, payload);
::encode(current_progress, payload);
::encode(omap_entries, payload);
f->dump_string("omap_recovered_to", omap_recovered_to);
}
-void ObjectRecoveryInfo::encode(bufferlist &bl) const
+void ObjectRecoveryInfo::encode(bufferlist &bl, uint64_t features) const
{
ENCODE_START(2, 1, bl);
::encode(soid, bl);
{
ENCODE_START(1, 1, bl);
::encode(soid, bl);
- ::encode(recovery_info, bl);
+ ::encode(recovery_info, bl, features);
::encode(recovery_progress, bl);
ENCODE_FINISH(bl);
}
::encode(omap_header, bl);
::encode(omap_entries, bl);
::encode(attrset, bl);
- ::encode(recovery_info, bl);
+ ::encode(recovery_info, bl, features);
::encode(after_progress, bl);
::encode(before_progress, bl);
ENCODE_FINISH(bl);
ObjectRecoveryInfo() : size(0) { }
static void generate_test_instances(list<ObjectRecoveryInfo*>& o);
- void encode(bufferlist &bl) const;
+ void encode(bufferlist &bl, uint64_t features) const;
void decode(bufferlist::iterator &bl, int64_t pool = -1);
ostream &print(ostream &out) const;
void dump(Formatter *f) const;
};
-WRITE_CLASS_ENCODER(ObjectRecoveryInfo)
+WRITE_CLASS_ENCODER_FEATURES(ObjectRecoveryInfo)
ostream& operator<<(ostream& out, const ObjectRecoveryInfo &inf);
struct ObjectRecoveryProgress {
TYPE(watch_info_t)
TYPE(object_info_t)
TYPE(SnapSet)
-TYPE(ObjectRecoveryInfo)
+TYPE_FEATUREFUL(ObjectRecoveryInfo)
TYPE(ObjectRecoveryProgress)
TYPE(ScrubMap::object)
TYPE(ScrubMap)