Bug #69092
openlibcephfs client cache trimming might remove dentries attached to opened dir inode.
0%
Description
This e.g. mght result in broken ceph_statxat() result: one would access 'head' object information instead of snapshotted one after cache trimming even when snapshot root folder has been opened and resulting descriptor provided to ceph_statxat call.
This negatively impacts both snapdiff and cephfs-mirroring functionality when handling large directory trees. E.g. cephfs-mirroring might produce wrong target directory tree - files missing or something.
Updated by Igor Fedotov over 1 year ago
https://github.com/ceph/ceph/pull/60909 reproduces the issue with a libcephfs test case.
Updated by Alexander Patrakov over 1 year ago
We have actually seen a few times how cephfs-mirror mirrors a few terabytes of data in a volatile directory and then erases everything and starts over. Might this be related?
Also concerning the mismirroring incidents associated with this: I think that Ceph should provide a graceful way of recovering from incorrect snapshots on the destination side that does not involve retransferring everything from scratch.
Updated by Igor Fedotov over 1 year ago
- Status changed from New to Fix Under Review
- Assignee changed from Venky Shankar to Igor Fedotov
- Pull request ID set to 60909
Updated by Venky Shankar about 1 year ago
- Category set to Correctness/Safety
- Priority changed from Normal to Urgent
- Target version set to v20.0.0
- Source set to Community (dev)
Updated by Venky Shankar about 1 year ago
- Status changed from Fix Under Review to Pending Backport
Updated by Upkeep Bot about 1 year ago
- Copied to Backport #69905: reef: libcephfs client cache trimming might remove dentries attached to opened dir inode. added
Updated by Upkeep Bot about 1 year ago
- Copied to Backport #69906: squid: libcephfs client cache trimming might remove dentries attached to opened dir inode. added
Updated by Upkeep Bot about 1 year ago
- Tags (freeform) set to backport_processed
Updated by Upkeep Bot 9 months ago
- Merge Commit set to cb5a62fbad0201c5aedf5b43eb9bf67cc5b500c5
- Fixed In set to v19.3.0-7481-gcb5a62fbad0
- Upkeep Timestamp set to 2025-07-08T18:12:57+00:00
Updated by Upkeep Bot 8 months ago
- Fixed In changed from v19.3.0-7481-gcb5a62fbad0 to v19.3.0-7481-gcb5a62fbad02
- Upkeep Timestamp changed from 2025-07-08T18:12:57+00:00 to 2025-07-14T15:23:04+00:00
Updated by Upkeep Bot 8 months ago
- Fixed In changed from v19.3.0-7481-gcb5a62fbad02 to v19.3.0-7481-gcb5a62fbad
- Upkeep Timestamp changed from 2025-07-14T15:23:04+00:00 to 2025-07-14T21:08:54+00:00
Updated by Upkeep Bot 5 months ago
- Released In set to v20.2.0~1158
- Upkeep Timestamp changed from 2025-07-14T21:08:54+00:00 to 2025-11-01T01:01:22+00:00