From: Sage Weil Date: Thu, 7 Aug 2008 21:40:27 +0000 (-0700) Subject: mds: clean up MDSTableServer interface a bit X-Git-Tag: v0.4~296 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=4e86444db20fd80cf5bc0eb4a51363d657ea4ce1;p=ceph.git mds: clean up MDSTableServer interface a bit --- diff --git a/src/mds/AnchorServer.h b/src/mds/AnchorServer.h index 4c0cd9548cee..3a4d16bdb7d7 100644 --- a/src/mds/AnchorServer.h +++ b/src/mds/AnchorServer.h @@ -33,19 +33,17 @@ class AnchorServer : public MDSTableServer { void init_inode(); void reset_state(); - void encode_state(bufferlist& bl) { + void encode_server_state(bufferlist& bl) { ::encode(anchor_map, bl); ::encode(pending_create, bl); ::encode(pending_destroy, bl); ::encode(pending_update, bl); - ::encode(pending_for_mds, bl); } - void decode_state(bufferlist::iterator& p) { + void decode_server_state(bufferlist::iterator& p) { ::decode(anchor_map, p); ::decode(pending_create, p); ::decode(pending_destroy, p); ::decode(pending_update, p); - ::decode(pending_for_mds, p); } bool add(inodeno_t ino, inodeno_t dirino, __u32 dn_hash); diff --git a/src/mds/MDSTableServer.h b/src/mds/MDSTableServer.h index b1a491349732..180c2f363f02 100644 --- a/src/mds/MDSTableServer.h +++ b/src/mds/MDSTableServer.h @@ -82,6 +82,18 @@ private: void handle_request(MMDSTableRequest *m); + virtual void encode_server_state(bufferlist& bl) = 0; + virtual void decode_server_state(bufferlist::iterator& bl) = 0; + + void encode_state(bufferlist& bl) { + encode_server_state(bl); + ::encode(pending_for_mds, bl); + } + void decode_state(bufferlist::iterator& bl) { + decode_server_state(bl); + ::decode(pending_for_mds, bl); + } + // recovery void finish_recovery(); void handle_mds_recovery(int who); diff --git a/src/mds/SnapServer.h b/src/mds/SnapServer.h index a0371f636325..29b89151a770 100644 --- a/src/mds/SnapServer.h +++ b/src/mds/SnapServer.h @@ -39,23 +39,21 @@ public: void init_inode(); void reset_state(); - void encode_state(bufferlist& bl) { + void encode_server_state(bufferlist& bl) { ::encode(last_snap, bl); ::encode(snaps, bl); ::encode(pending_purge, bl); ::encode(pending_create, bl); ::encode(pending_destroy, bl); ::encode(pending_noop, bl); - ::encode(pending_for_mds, bl); } - void decode_state(bufferlist::iterator& bl) { + void decode_server_state(bufferlist::iterator& bl) { ::decode(last_snap, bl); ::decode(snaps, bl); ::decode(pending_purge, bl); ::decode(pending_create, bl); ::decode(pending_destroy, bl); ::decode(pending_noop, bl); - ::decode(pending_for_mds, bl); } // server bits