Bug 857874 - With acl enabled in glusterfs, quota limits are not enforced
Summary: With acl enabled in glusterfs, quota limits are not enforced
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: GlusterFS
Classification: Community
Component: core
Version: mainline
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Raghavendra G
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-09-17 10:41 UTC by Raghavendra G
Modified: 2013-07-24 17:16 UTC (History)
2 users (show)

Fixed In Version: glusterfs-3.4.0
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-07-24 17:16:51 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Embargoed:


Attachments (Terms of Use)

Description Raghavendra G 2012-09-17 10:41:06 UTC
Description of problem:

Following is a copy of a mail sent to gluster-users:

> I found this only happens when I mount the volume with the "acl"
> option.
> Otherwise, I don't get the "no limit-set option provided" message,
> and
> things works fine. Not even needing the remount the volume to see
> changes to quota.
> 
> ...

> 
> On 09/10/2012 07:15 PM, XXXXX wrote:
> > I found these in the client log:
> >
> > [2012-09-10 18:56:07.728206] I [glusterfsd-mgmt.c:64:mgmt_cbk_spec]
> > 0-mgmt: Volume file changed
> > [2012-09-10 18:56:08.751162] D
> > [glusterfsd-mgmt.c:1441:is_graph_topology_equal] 0-glusterfsd-mgmt:
> > graphs are equal
> > [2012-09-10 18:56:08.751175] D
> > [glusterfsd-mgmt.c:1495:glusterfs_volfile_reconfigure]
> > 0-glusterfsd-mgmt: Only options have changed in the new graph
> > [2012-09-10 18:56:08.751192] D
> > [options.c:925:xlator_reconfigure_rec]
> > 0-ana03-dht: reconfigured
> > [2012-09-10 18:56:08.751200] I [quota.c:3085:quota_parse_limits]
> > 0-ana03-quota: no "limit-set" option provided
> > ...
> > XXXXX
> >
> >
> >
> > On 09/10/2012 03:01 PM, Ling Ho wrote:
> >> I am trying to use directory quota in our environment and face two
> >> problems:
> >>
> >> 1. When new quota is set on a directory, it doesn't take effect
> >> until
> >> the volume is remounted on the client. This is a major
> >> inconvenience.
> >>
> >> 2. If I add a new quota, quota stops working on the client.
> >>
> >> This is how to reproduce problem #2.
> >>
> >> I have these directories under my volume ana03:
> >>
> >> XXXX
> >> ling/testdir
> >>
> >> # gluster volume quota ana03 limit-usage /ling 20GB
> >>
> >> I could write into the directory /ling till it is over 20GB and
> >> it
> >> gives me a Disk quota exceeded error.
> >>
> >> However, if I then set quota for "ling/testdir", without remonting
> >> the
> >> volume on the client
> >>
> >> # gluster volume quota ana03 limit-usage /ling/testdir 2GB
> >>
> >> Not only I can write more than 2GB under "ling/testdir", I could
> >> now
> >> write more than 20GB under "ling".
> >>
> >> Remounting the volume on the client fixes everything.

Version-Release number of selected component (if applicable):

glusterfs-3.3.0-1 on both the client and server. The server is running RHEL6.3, and client running RHEL5.8.


How reproducible:
consistently

Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

With acl enabled, a posix-acl translator is loaded on top of the client graph. This translator is added through command line and the volfile received from server does not contain it. Hence new graph constructed after changes, does not contain this translator. However, reconfigure code is oblivious to this fact and calls reconfigure recursively on oldgraph->first and newgraph->first. Due, to this the pair of xlators passed to reconfigure are not of same translator type. Hence each translator receives wrong options to reconfigure from.

Comment 1 Amar Tumballi 2012-09-25 17:40:59 UTC
patch http://review.gluster.org/3949 fixes the issue


Note You need to log in before you can comment on or make changes to this bug.