]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
mds: do not take the ino which has been used
authorXiubo Li <xiubli@redhat.com>
Wed, 15 Sep 2021 12:58:22 +0000 (20:58 +0800)
committerXiubo Li <xiubli@redhat.com>
Fri, 5 May 2023 10:46:01 +0000 (18:46 +0800)
commita8c63c7919a78497190995b1a542fbcc05e68d92
tree5dd02c122d76d012df364b5d5f626755c40db880
parent170f74d2a17a4bb5a3bbb7c4e4624d2b978e9c7a
mds: do not take the ino which has been used

When replaying the journals, if the inodetable or the sessionmap
versions do not match, the CInode will be added to the inode_map,
but the ino may still be in the inodetable or sessions' prealloc
inos list.

So when allocating new CInode we should skip them.

Fixes: https://tracker.ceph.com/issues/52280
Signed-off-by: Xiubo Li <xiubli@redhat.com>
src/mds/CDir.cc
src/mds/MDCache.cc
src/mds/MDCache.h
src/mds/Server.cc
src/mds/journal.cc