dout(7) << "handle_mds_recovery mds." << who << dendl;
// resend agrees for recovered mds
- for (map<version_t,_pending>::iterator p = pending_for_mds.begin();
+ for (map<version_t,mds_table_pending_t>::iterator p = pending_for_mds.begin();
p != pending_for_mds.end();
p++) {
if (who >= 0 && p->second.mds != who)
class MDSTableServer : public MDSTable {
public:
int table;
-
- /* mds's requesting any pending ops. child needs to encodig the corresponding
- * pending mutation state in the table.
- */
- struct _pending {
- uint64_t reqid;
- __s32 mds;
- version_t tid;
- void encode(bufferlist& bl) const {
- __u8 struct_v = 1;
- ::encode(struct_v, bl);
- ::encode(reqid, bl);
- ::encode(mds, bl);
- ::encode(tid, bl);
- }
- void decode(bufferlist::iterator& bl) {
- __u8 struct_v;
- ::decode(struct_v, bl);
- ::decode(reqid, bl);
- ::decode(mds, bl);
- ::decode(tid, bl);
- }
- };
- WRITE_CLASS_ENCODER(_pending)
- map<version_t,_pending> pending_for_mds; // ** child should encode this! **
+ map<version_t,mds_table_pending_t> pending_for_mds; // ** child should encode this! **
private:
void finish_recovery();
void handle_mds_recovery(int who);
};
-WRITE_CLASS_ENCODER(MDSTableServer::_pending)
#endif
return out << "(" << k.name << "," << k.snapid << ")";
}
+/*
+ * mds_table_pending_t
+ *
+ * mds's requesting any pending ops. child needs to encode the corresponding
+ * pending mutation state in the table.
+ */
+struct mds_table_pending_t {
+ uint64_t reqid;
+ __s32 mds;
+ version_t tid;
+ void encode(bufferlist& bl) const {
+ __u8 struct_v = 1;
+ ::encode(struct_v, bl);
+ ::encode(reqid, bl);
+ ::encode(mds, bl);
+ ::encode(tid, bl);
+ }
+ void decode(bufferlist::iterator& bl) {
+ __u8 struct_v;
+ ::decode(struct_v, bl);
+ ::decode(reqid, bl);
+ ::decode(mds, bl);
+ ::decode(tid, bl);
+ }
+};
+WRITE_CLASS_ENCODER(mds_table_pending_t)
// =========