~ubuntu-branches/ubuntu/precise/ceph/precise-proposed

« back to all changes in this revision

Viewing changes to src/messages/MMDSCacheRejoin.h

  • Committer: Bazaar Package Importer
  • Author(s): Laszlo Boszormenyi (GCS)
  • Date: 2011-04-25 10:09:05 UTC
  • mfrom: (1.1.3 upstream) (0.1.5 sid)
  • Revision ID: james.westby@ubuntu.com-20110425100905-exm7dfvi2v5ick02
Tags: 0.27-1
New upstream release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
148
148
  WRITE_CLASS_ENCODER(lock_bls)
149
149
 
150
150
  // weak
151
 
  map<dirfrag_t, map<string_snap_t, dn_weak> > weak;
 
151
  map<inodeno_t, map<string_snap_t, dn_weak> > weak;
 
152
  set<dirfrag_t> weak_dirfrags;
152
153
  set<vinodeno_t> weak_inodes;
153
154
  map<inodeno_t, lock_bls> inode_scatterlocks;
154
155
 
228
229
  }
229
230
  
230
231
  // dirfrags
231
 
  void add_weak_dirfrag(dirfrag_t df) {
232
 
    weak[df];
233
 
  }
234
 
  void add_weak_dirfrag(dirfrag_t df, map<string_snap_t,dn_weak>& dnmap) {
235
 
    weak[df] = dnmap;
236
 
  }
237
232
  void add_strong_dirfrag(dirfrag_t df, int n, int dr) {
238
233
    strong_dirfrags[df] = dirfrag_strong(n, dr);
239
234
  }
240
235
   
241
236
  // dentries
242
 
  void add_weak_dentry(dirfrag_t df, const string& dname, snapid_t last, dn_weak& dnw) {
243
 
    weak[df][string_snap_t(dname, last)] = dnw;
244
 
  }
245
 
  void add_weak_primary_dentry(dirfrag_t df, const string& dname, snapid_t first, snapid_t last, inodeno_t ino) {
246
 
    weak[df][string_snap_t(dname, last)] = dn_weak(first, ino);
 
237
  void add_weak_dirfrag(dirfrag_t df) {
 
238
    weak_dirfrags.insert(df);
 
239
  }
 
240
  void add_weak_dentry(inodeno_t dirino, const string& dname, snapid_t last, dn_weak& dnw) {
 
241
    weak[dirino][string_snap_t(dname, last)] = dnw;
 
242
  }
 
243
  void add_weak_primary_dentry(inodeno_t dirino, const string& dname, snapid_t first, snapid_t last, inodeno_t ino) {
 
244
    weak[dirino][string_snap_t(dname, last)] = dn_weak(first, ino);
247
245
  }
248
246
  void add_strong_dentry(dirfrag_t df, const string& dname, snapid_t first, snapid_t last, inodeno_t pi, inodeno_t ri, unsigned char rdt, int n, int ls) {
249
247
    strong_dentries[df][string_snap_t(dname, last)] = dn_strong(first, pi, ri, rdt, n, ls);
267
265
    ::encode(cap_export_bl, payload);
268
266
    ::encode(strong_dirfrags, payload);
269
267
    ::encode(weak, payload);
 
268
    ::encode(weak_dirfrags, payload);
270
269
    ::encode(weak_inodes, payload);
271
270
    ::encode(strong_dentries, payload);
272
271
    ::encode(authpinned_dentries, payload);
289
288
    }
290
289
    ::decode(strong_dirfrags, p);
291
290
    ::decode(weak, p);
 
291
    ::decode(weak_dirfrags, p);
292
292
    ::decode(weak_inodes, p);
293
293
    ::decode(strong_dentries, p);
294
294
    ::decode(authpinned_dentries, p);