From: Joao Eduardo Luis Date: Thu, 28 Jan 2016 17:20:30 +0000 (+0000) Subject: messages: MMonElection: support mon-specific features X-Git-Tag: v11.1.0~400^2~14 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=34b4ad730bfb5a90760705553415582ac01a4312;p=ceph.git messages: MMonElection: support mon-specific features Signed-off-by: Joao Eduardo Luis --- diff --git a/src/messages/MMonElection.h b/src/messages/MMonElection.h index a34feac6163a..b6975498ac35 100644 --- a/src/messages/MMonElection.h +++ b/src/messages/MMonElection.h @@ -18,10 +18,11 @@ #include "msg/Message.h" #include "mon/MonMap.h" +#include "mon/mon_types.h" class MMonElection : public Message { - static const int HEAD_VERSION = 5; + static const int HEAD_VERSION = 6; static const int COMPAT_VERSION = 2; public: @@ -45,6 +46,7 @@ public: bufferlist monmap_bl; set quorum; uint64_t quorum_features; + mon_feature_t mon_features; bufferlist sharing_bl; /* the following were both used in the next branch for a while * on user cluster, so we've left them in for compatibility. */ @@ -52,13 +54,18 @@ public: version_t defunct_two; MMonElection() : Message(MSG_MON_ELECTION, HEAD_VERSION, COMPAT_VERSION), - op(0), epoch(0), quorum_features(0), defunct_one(0), + op(0), epoch(0), + quorum_features(0), + mon_features(0), + defunct_one(0), defunct_two(0) { } MMonElection(int o, epoch_t e, MonMap *m) : Message(MSG_MON_ELECTION, HEAD_VERSION, COMPAT_VERSION), - fsid(m->fsid), op(o), epoch(e), quorum_features(0), + fsid(m->fsid), op(o), epoch(e), + quorum_features(0), + mon_features(0), defunct_one(0), defunct_two(0) { // encode using full feature set; we will reencode for dest later, @@ -92,6 +99,7 @@ public: ::encode(defunct_one, payload); ::encode(defunct_two, payload); ::encode(sharing_bl, payload); + ::encode(mon_features, payload); } void decode_payload() { bufferlist::iterator p = payload.begin(); @@ -113,6 +121,8 @@ public: } if (header.version >= 5) ::decode(sharing_bl, p); + if (header.version >= 6) + ::decode(mon_features, p); } };