From 4e86444db20fd80cf5bc0eb4a51363d657ea4ce1 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Thu, 7 Aug 2008 14:40:27 -0700 Subject: [PATCH] mds: clean up MDSTableServer interface a bit --- src/mds/AnchorServer.h | 6 ++---- src/mds/MDSTableServer.h | 12 ++++++++++++ src/mds/SnapServer.h | 6 ++---- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/mds/AnchorServer.h b/src/mds/AnchorServer.h index 4c0cd9548cee9..3a4d16bdb7d77 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 b1a491349732e..180c2f363f02a 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 a0371f6363254..29b89151a770f 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 -- 2.39.5