Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
mds: revert standby-replay trimming changes
Revert "mds: do not trim the inodes from the lru list in standby_replay" Revert "mds: trim cache during standby replay" This reverts commit 79bb44c. This reverts commit c0fe25b. standby-replay daemons were changed to keep minimal metadata from the journal in cache but the original intent of standby-replay was to have a cache that's as warm as the rank itself. This reverts the two commits which changed that behavior. Part of these reason for this is that the new rapid cache trimming behavior was not correct at all. The trimming loop would break when it runs into a dentry with non-null linkage. This would nearly always be the case. It was thought that this was a problem introduced by [2] as MDCache::standby_trim_segment has a different trim check [4] but the original issue (tracker 48673) is as old as [1], indicating the problem predates [2]. So, this commit reverts all of that. I have lingering suspicions that the standby-replay daemon is not pinning some dentries properly which causes [5] but this did not show up unless the MDS was rapidly evicting some dentries. More research needs done there. [1] c0fe25b [2] 79bb44c [3] https://github.com/ceph/ceph/blob/84fba097049ec4f72549588eaacc64f30c7a88a8/src/mds/MDCache.cc#L6816-L6820 [4] https://github.com/ceph/ceph/blob/84fba097049ec4f72549588eaacc64f30c7a88a8/src/mds/MDCache.cc#L7476-L7481 [5] https://tracker.ceph.com/issues/50246 Fixes: https://tracker.ceph.com/issues/48673 Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
- Loading branch information