On Tue, Jun 18, 2019 at 4:25 PM ?? ?? <[email protected]> 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
> [email protected]
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
_______________________________________________
ceph-users mailing list
[email protected]
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

Reply via email to