]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/mds/events/ESlaveUpdate.h
update sources to ceph Nautilus 14.2.1
[ceph.git] / ceph / src / mds / events / ESlaveUpdate.h
index ea1fa3acf772eb04b79509f6b3c89876b16a1fb8..23ca430bc1cb15710bb2f78005555a2e89323ac4 100644 (file)
@@ -15,6 +15,8 @@
 #ifndef CEPH_MDS_ESLAVEUPDATE_H
 #define CEPH_MDS_ESLAVEUPDATE_H
 
+#include <string_view>
+
 #include "../LogEvent.h"
 #include "EMetaBlob.h"
 
@@ -30,11 +32,12 @@ struct link_rollback {
   utime_t old_ctime;
   utime_t old_dir_mtime;
   utime_t old_dir_rctime;
+  bufferlist snapbl;
 
   link_rollback() : ino(0), was_inc(false) {}
 
   void encode(bufferlist& bl) const;
-  void decode(bufferlist::iterator& bl);
+  void decode(bufferlist::const_iterator& bl);
   void dump(Formatter *f) const;
   static void generate_test_instances(list<link_rollback*>& ls);
 };
@@ -52,9 +55,10 @@ struct rmdir_rollback {
   string src_dname;
   dirfrag_t dest_dir;
   string dest_dname;
+  bufferlist snapbl;
 
   void encode(bufferlist& bl) const;
-  void decode(bufferlist::iterator& bl);
+  void decode(bufferlist::const_iterator& bl);
   void dump(Formatter *f) const;
   static void generate_test_instances(list<rmdir_rollback*>& ls);
 };
@@ -73,7 +77,7 @@ struct rename_rollback {
     drec() : remote_d_type((char)S_IFREG) {}
 
     void encode(bufferlist& bl) const;
-    void decode(bufferlist::iterator& bl);
+    void decode(bufferlist::const_iterator& bl);
     void dump(Formatter *f) const;
     static void generate_test_instances(list<drec*>& ls);
   };
@@ -83,9 +87,11 @@ struct rename_rollback {
   drec orig_src, orig_dest;
   drec stray; // we know this is null, but we want dname, old mtime/rctime
   utime_t ctime;
+  bufferlist srci_snapbl;
+  bufferlist desti_snapbl;
 
   void encode(bufferlist& bl) const;
-  void decode(bufferlist::iterator& bl);
+  void decode(bufferlist::const_iterator& bl);
   void dump(Formatter *f) const;
   static void generate_test_instances(list<rename_rollback*>& ls);
 };
@@ -119,8 +125,8 @@ public:
   __u8 origop; // link | rename
 
   ESlaveUpdate() : LogEvent(EVENT_SLAVEUPDATE), master(0), op(0), origop(0) { }
-  ESlaveUpdate(MDLog *mdlog, const char *s, metareqid_t ri, int mastermds, int o, int oo) : 
-    LogEvent(EVENT_SLAVEUPDATE), commit(mdlog), 
+  ESlaveUpdate(MDLog *mdlog, std::string_view s, metareqid_t ri, int mastermds, int o, int oo) :
+    LogEvent(EVENT_SLAVEUPDATE),
     type(s),
     reqid(ri),
     master(mastermds),
@@ -140,7 +146,7 @@ public:
   EMetaBlob *get_metablob() override { return &commit; }
 
   void encode(bufferlist& bl, uint64_t features) const override;
-  void decode(bufferlist::iterator& bl) override;
+  void decode(bufferlist::const_iterator& bl) override;
   void dump(Formatter *f) const override;
   static void generate_test_instances(list<ESlaveUpdate*>& ls);