]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mds: lookup snapped inodes by vinodeno_t 18942/head
authorYan, Zheng <zyan@redhat.com>
Wed, 15 Nov 2017 09:01:28 +0000 (17:01 +0800)
committerYan, Zheng <zyan@redhat.com>
Wed, 15 Nov 2017 09:41:28 +0000 (17:41 +0800)
commit01d2c37aad579e70e41b0e96e2e06e30bd9c0ce3
tree37b0970f21227e9c419d55a9993a293928bbfaab
parent34f17c299e0aae7baa1dafcb6f98aae7fe6cb452
mds: lookup snapped inodes by vinodeno_t

Directory inodes are always multiversion, snapped metadata are stored
together with head inode. lookup snapped directory inodes is basically
the same as lookup head inodes.

For non-directory inode, there can be multiple version of snapped inodes,
and they can be stored in different dirfrags. To lookup a snapped inode,
client need to tell mds from which dirfrag it got the snapped inode.

Fixes: http://tracker.ceph.com/issues/22105
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
src/include/ceph_fs.h
src/mds/CInode.cc
src/mds/CInode.h
src/mds/MDCache.h
src/mds/Server.cc
src/mds/Server.h