Actions
Bug #51276
closedmds: avoid journaling overhead for setxattr("ceph.dir.subvolume") for no-op case
Status:
Resolved
Priority:
Urgent
Assignee:
Category:
Performance/Resource Usage
Target version:
% Done:
0%
Source:
Development
Tags:
backport_processed
Backport:
pacific,octopus,nautilus
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(FS):
MDS
Labels (FS):
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Description
In preparation for acquiring the xlock on the directory inode, the MDS must journal a few events before continuing on with the setvxattr. This can cause significant delays in the volumes ceph-mgr module which needs to regularly enable this vxattr from multiple code paths. We could cache in that module whether the vxattr is set but it's also pretty easy to adjust the MDS to acquire a rdlock on the directory to check if the subvolume flag is already set. That is much lighter weight and the lock is generally readily available.
Updated by Patrick Donnelly almost 3 years ago
- Status changed from In Progress to Fix Under Review
- Pull request ID set to 41935
Updated by Patrick Donnelly almost 3 years ago
- Status changed from Fix Under Review to Pending Backport
Updated by Patrick Donnelly almost 3 years ago
- Priority changed from Normal to Urgent
Updated by Backport Bot almost 3 years ago
- Copied to Backport #51335: pacific: mds: avoid journaling overhead for setxattr("ceph.dir.subvolume") for no-op case added
Updated by Backport Bot almost 3 years ago
- Copied to Backport #51336: octopus: mds: avoid journaling overhead for setxattr("ceph.dir.subvolume") for no-op case added
Updated by Backport Bot almost 3 years ago
- Copied to Backport #51337: nautilus: mds: avoid journaling overhead for setxattr("ceph.dir.subvolume") for no-op case added
Updated by Konstantin Shalygin over 1 year ago
- Tracker changed from Fix to Bug
- Status changed from Pending Backport to Resolved
- Regression set to No
- Severity set to 3 - minor
Actions