[LU-2869] extended attribute cache for Lustre Created: 26/Feb/13 Updated: 28/Oct/23 Resolved: 29/Jul/13 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | Lustre 2.5.0 |
| Type: | Improvement | Priority: | Minor |
| Reporter: | Andrew Perepechko | Assignee: | James Nunez (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | patch, xattr | ||
| Attachments: |
|
||||||||||||||||||||||||||||||||
| Issue Links: |
|
||||||||||||||||||||||||||||||||
| Rank (Obsolete): | 6935 | ||||||||||||||||||||||||||||||||
| Description |
|
The patch implements an extended attribute cache for The patch itself will be uploaded shortly. |
| Comments |
| Comment by Andrew Perepechko [ 26/Feb/13 ] |
| Comment by Andrew Perepechko [ 26/Feb/13 ] |
|
xattr cache performance for the simplest Lustre configuration (2 nodes), read case is faster for the cached version as compared with the uncached by 4.5 times |
| Comment by Nathan Rutman [ 27/Feb/13 ] |
|
Xyratex MRP-57 |
| Comment by jacques-charles lafoucriere [ 28/Feb/13 ] |
|
Nathan the xyratex url is broken (server not found error), can you put a valid/public one ? |
| Comment by Nathan Rutman [ 28/Feb/13 ] |
|
Sorry JC, the Xyratex tickets are really only useful for Xyratex engineers. We have posted the patch in the first comment above. |
| Comment by Andrew Perepechko [ 21/May/13 ] |
|
Will this patch be inspected? It's almost three months from the patch upload. I had to rebase to a recent version. |
| Comment by James Nunez (Inactive) [ 21/May/13 ] |
|
The master branch should open for new features soon. |
| Comment by Andrew Perepechko [ 21/May/13 ] |
|
Thanks, James! |
| Comment by James Nunez (Inactive) [ 29/Jul/13 ] |
|
Landed for 2.5 |
| Comment by Alex Zhuravlev [ 05/Aug/13 ] |
|
can you explain why mot_xattr_sem is needed, please? |
| Comment by Andrew Perepechko [ 05/Aug/13 ] |
|
The semaphore was added to protect the case when the client does not take the XATTR lock and requests FLXATTRALL. |
| Comment by Alex Zhuravlev [ 05/Aug/13 ] |
|
well, if this failure is -ENOENT, then it should be easy to check and skip? on the otherhand we carry this structure for every object in MDT cache. a bit expensive for such a case? |
| Comment by Andrew Perepechko [ 05/Aug/13 ] |
|
Besides -ENOENT, due to races an FLXATTRLS user can get an inconsistent list of attribute names and values, which the object never had from another client viewpoint. But since there is no use case for that, the locking can be simply dropped. |
| Comment by Alex Zhuravlev [ 05/Aug/13 ] |
|
not sure what kind of inconsistency FLXATTRLS can observe? any plans to make a patch to drop it? |
| Comment by Andrew Perepechko [ 05/Aug/13 ] |
Like, setxattr "a=x", setxattr "b=y". An unlocked FLXATTRLS can pack "b=y" update without packing "a=x" because of update races.
I'll update http://review.whamcloud.com/#/c/7208/ with this fix in a while. |
| Comment by Alex Zhuravlev [ 05/Aug/13 ] |
|
great. thanks! |