break;
encode(snap_name, dnbl);
+
//infinite lease
LeaseStat e(CEPH_LEASE_VALID, -1, 0);
+ e.alternate_name = std::string(p->second->alternate_name);
mds->locker->encode_lease(dnbl, mdr->session->info, e);
dout(20) << "encode_infinite_lease" << dendl;
info.ino = diri->ino();
info.snapid = snapid;
info.name = snapname;
+ info.alternate_name = req->get_alternate_name();
info.stamp = mdr->get_op_stamp();
info.metadata = payload.metadata;
void SnapInfo::encode(bufferlist& bl) const
{
- ENCODE_START(3, 2, bl);
+ ENCODE_START(4, 2, bl);
encode(snapid, bl);
encode(ino, bl);
encode(stamp, bl);
encode(name, bl);
encode(metadata, bl);
+ encode(alternate_name, bl);
ENCODE_FINISH(bl);
}
void SnapInfo::decode(bufferlist::const_iterator& bl)
{
- DECODE_START_LEGACY_COMPAT_LEN(3, 2, 2, bl);
+ DECODE_START_LEGACY_COMPAT_LEN(4, 2, 2, bl);
decode(snapid, bl);
decode(ino, bl);
decode(stamp, bl);
if (struct_v >= 3) {
decode(metadata, bl);
}
+ if (struct_v >= 4) {
+ decode(alternate_name, bl);
+ }
DECODE_FINISH(bl);
}
inodeno_t ino;
utime_t stamp;
std::string name;
+ std::string alternate_name;
mutable std::string long_name; ///< cached _$ino_$name
std::map<std::string,std::string> metadata;