To track which ranks have been reported in state
DAMAGED by an MDS daemon.
Signed-off-by: John Spray <john.spray@redhat.com>
::encode(cas_pool, bl);
// kclient ignores everything from here
- __u16 ev = 8;
+ __u16 ev = 9;
::encode(ev, bl);
::encode(compat, bl);
::encode(metadata_pool, bl);
::encode(inline_data_enabled, bl);
::encode(enabled, bl);
::encode(fs_name, bl);
+ ::encode(damaged, bl);
ENCODE_FINISH(bl);
}
enabled = false;
}
}
+
+ if (ev >= 9) {
+ ::decode(damaged, p);
+ }
DECODE_FINISH(p);
}
std::set<mds_rank_t> in; // currently defined cluster
std::map<mds_rank_t,int32_t> inc; // most recent incarnation.
- std::set<mds_rank_t> failed, stopped; // which roles are failed or stopped
+ // which ranks are failed, stopped, damaged (i.e. not held by a daemon)
+ std::set<mds_rank_t> failed, stopped, damaged;
std::map<mds_rank_t, mds_gid_t> up; // who is in those roles
std::map<mds_gid_t, mds_info_t> mds_info;