On Tue, Jun 18, 2019 at 4:25 PM ?? ?? <Aotori@xxxxxxxxxxx> wrote: > > > > There are 2 clients, A and B. There is a directory /a/b/c/d/. > > Client A create a file /a/b/c/d/a.txt. > > Client B move the folder d to /a/. > > Now, this directory looks like this:/a/b/c/ and /a/d/. > > /a/b/c/d is not exist any more. > > Client A try to create a file /a/b/c/d/b.txt. > > > > The result is, when use nfs-ganesha & mount -t nfs4,it successfully create a file but in /a/d/b.txt, of course it’s wrong. However, it failed to create a file when use mount -t ceph. > > > > What I wonder is, Client A saved the Session and Dentry when create the first file. Why it failed the second time? How does cephfs prevent it? I am a student and I read the Client.cc but get no answer. > when client B moves 'd' to /a/, mds reovke lease of dentry 'd' from client A. see Client::_lookup > _______________________________________________ > ceph-users mailing list > ceph-users@xxxxxxxxxxxxxx > http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com _______________________________________________ ceph-users mailing list ceph-users@xxxxxxxxxxxxxx http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com