metablob(log) { }
EImportStart() : LogEvent(EVENT_IMPORTSTART) { }
- void print(ostream& out) {
+ void print(ostream& out) const {
out << "EImportStart " << base << " " << metablob;
}
- void encode(bufferlist &bl) const {
- __u8 struct_v = 2;
- ::encode(struct_v, bl);
- ::encode(stamp, bl);
- ::encode(base, bl);
- ::encode(metablob, bl);
- ::encode(bounds, bl);
- ::encode(cmapv, bl);
- ::encode(client_map, bl);
- }
- void decode(bufferlist::iterator &bl) {
- __u8 struct_v;
- ::decode(struct_v, bl);
- if (struct_v >= 2)
- ::decode(stamp, bl);
- ::decode(base, bl);
- ::decode(metablob, bl);
- ::decode(bounds, bl);
- ::decode(cmapv, bl);
- ::decode(client_map, bl);
- }
+ void encode(bufferlist &bl) const;
+ void decode(bufferlist::iterator &bl);
+ void dump(Formatter *f) const;
+ static void generate_test_instances(list<EImportStart*>& ls);
void update_segment();
void replay(MDS *mds);
update_segment();
}
+void EImportStart::encode(bufferlist &bl) const {
+ ENCODE_START(3, 3, bl);
+ ::encode(stamp, bl);
+ ::encode(base, bl);
+ ::encode(metablob, bl);
+ ::encode(bounds, bl);
+ ::encode(cmapv, bl);
+ ::encode(client_map, bl);
+ ENCODE_FINISH(bl);
+}
+
+void EImportStart::decode(bufferlist::iterator &bl) {
+ DECODE_START_LEGACY_COMPAT_LEN(3, 3, 3, bl);
+ if (struct_v >= 2)
+ ::decode(stamp, bl);
+ ::decode(base, bl);
+ ::decode(metablob, bl);
+ ::decode(bounds, bl);
+ ::decode(cmapv, bl);
+ ::decode(client_map, bl);
+ DECODE_FINISH(bl);
+}
+
+void EImportStart::dump(Formatter *f) const
+{
+ f->dump_stream("base dirfrag") << base;
+ f->open_array_section("boundary dirfrags");
+ for (vector<dirfrag_t>::const_iterator iter = bounds.begin();
+ iter != bounds.end(); ++iter) {
+ f->dump_stream("frag") << *iter;
+ }
+ f->close_section();
+}
+
+void EImportStart::generate_test_instances(list<EImportStart*>& ls)
+{
+ ls.push_back(new EImportStart);
+}
+
// -----------------------
// EImportFinish