X-Git-Url: https://git.proxmox.com/?p=ceph.git;a=blobdiff_plain;f=ceph%2Fsrc%2Fmessages%2FMOSDRepScrubMap.h;h=a3835914b45f45867b7545058ce4fb6d6b4f65ff;hp=f17bb0c2cf30f1da0cc73ffeb24977a0ec8d45a5;hb=28e407b858acd3bddc89f68583571f771bb42e46;hpb=dfcb7b53b2e4fcd2a5af0240d4975adc711ab96e diff --git a/ceph/src/messages/MOSDRepScrubMap.h b/ceph/src/messages/MOSDRepScrubMap.h index f17bb0c2c..a3835914b 100644 --- a/ceph/src/messages/MOSDRepScrubMap.h +++ b/ceph/src/messages/MOSDRepScrubMap.h @@ -23,13 +23,14 @@ struct MOSDRepScrubMap : public MOSDFastDispatchOp { - static const int HEAD_VERSION = 1; + static const int HEAD_VERSION = 2; static const int COMPAT_VERSION = 1; spg_t pgid; // primary spg_t epoch_t map_epoch = 0; pg_shard_t from; // whose scrubmap this is bufferlist scrub_map_bl; + bool preempted = false; epoch_t get_map_epoch() const override { return map_epoch; @@ -54,19 +55,24 @@ public: const char *get_type_name() const { return "rep_scrubmap"; } void print(ostream& out) const { out << "rep_scrubmap(" << pgid << " e" << map_epoch - << " from shard " << from << ")"; + << " from shard " << from + << (preempted ? " PREEMPTED":"") << ")"; } void encode_payload(uint64_t features) { ::encode(pgid, payload); ::encode(map_epoch, payload); ::encode(from, payload); + ::encode(preempted, payload); } void decode_payload() { bufferlist::iterator p = payload.begin(); ::decode(pgid, p); ::decode(map_epoch, p); ::decode(from, p); + if (header.version >= 2) { + ::decode(preempted, p); + } } };