Bug 1566352
Summary: | posix-acl not synchronized between glusterfs clients | ||
---|---|---|---|
Product: | [Community] GlusterFS | Reporter: | zhou lin <zz.sh.cynthia> |
Component: | posix-acl | Assignee: | Vijay Bellur <vbellur> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | |
Severity: | high | Docs Contact: | |
Priority: | high | ||
Version: | mainline | CC: | atumball, bugs, vbellur |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | glusterfs-6.x | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2019-06-18 07:26:23 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
zhou lin
2018-04-12 07:04:20 UTC
i find that after i revert change https://review.gluster.org/16945 there is no such issue. following is my analysis on this issue. When one client setfacl on volume root (E.g /mnt/mstate) it will update local acl buffer and send setxattr OP request to remote glusterfs server side, other gluster clients depend on lookup to update its local acl buffer, but in case of volume root , I do not find any lookup operation for it, except for the first time when client gets up. so , why there is no lookup OP for volume root dir? If root dir is looked up just like other directory, there is no such issue, because the lookup cbk in posix-acl will update its local acl buffer. When other clients try to check their acl, they will send getxattr OP to local posix-acl translator, however, this translator retrieves acl from remote glusterfs server side instead of its local buffer, this makes user very confused, because what they see is not its local acl buffer content! Any other method to update all other client’s local acl buffer? from current design it seems client will depend on some kinds of fop (E.g lookup op to update local acl buffer) i think it is better if there is some synchronization mechanism between clients. Release 3.12 has been EOLd and this bug was still found to be in the NEW state, hence moving the version to mainline, to triage the same and take appropriate actions. https://review.gluster.org/#/c/glusterfs/+/19867/ fixes the part which caused this issue. |