-
Notifications
You must be signed in to change notification settings - Fork 113
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Store extended attributes in files in stead of in extended attributes #3649
Conversation
Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a changelog item based on your changes. |
b03f553
to
f4a1bbe
Compare
f89dfbe
to
c490456
Compare
6511dea
to
26c253a
Compare
a7d6980
to
efcf327
Compare
Co-Authored-By: Jörn Friedrich Dreyer <[email protected]>
54367fb
to
e6745d4
Compare
Signed-off-by: Jörn Friedrich Dreyer <[email protected]>
3183d67
to
d0c3392
Compare
Signed-off-by: Jörn Friedrich Dreyer <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yuck, the missing abstraction of a node causes a lot of noise and making the linter happy causes even more noise. The prefix usage is sprinkled over all decomposedfs files ... we really need to move that to the node as in 87a0d23 to truly decouple the implementation. The current xattr backend interface only ties the code further together by introducing methods like IsMetaFile(path string) bool
, UsesExternalMetadataFile() bool
and especially MetadataPath(path string) string
.
I'm ok with merging it as is, as it introduces a new experimental backend for metadata which frees us from xattr limitations in some corner cases. But before touching this again we should refactor this mess ASAP.
bbdb712
to
c143380
Compare
33e44c2
to
eaf8a06
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Just one small nitpick
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍 But can we run a [full-ci] pipeline with this changes on ocis before merging? If you did already please ignore the comment.
Signed-off-by: Jörn Friedrich Dreyer <[email protected]>
|
ocis full-ci green, too https://drone.owncloud.com/owncloud/ocis/19330 |
Hi, I just want to give my 2 cents on this. Keeping a metadata file in sync with the file is referring to is very hard task. Atomicity is paramount to avoid race conditions.
|
We added a new metadata backend for the decomposed storage driver that uses an additional
.ini
file to store file metadata. This allows scaling beyond some filesystem specific xattr limitations.