Bug 1294816

Summary: Unable to modify quota hard limit on tier volume after disk limit got exceeded
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Arthy Loganathan <aloganat>
Component: tierAssignee: Bug Updates Notification Mailing List <rhs-bugs>
Status: CLOSED ERRATA QA Contact: Anil Shah <ashah>
Severity: high Docs Contact:
Priority: urgent    
Version: rhgs-3.1CC: asrivast, byarlaga, mselvaga, rhs-bugs, sankarshan, storage-qa-internal, vmallika
Target Milestone: ---Keywords: Regression, Triaged, ZStream
Target Release: RHGS 3.1.2   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-3.7.5-15 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1295763 (view as bug list) Environment:
Last Closed: 2016-03-01 06:06:29 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:
Bug Depends On:    
Bug Blocks: 1295763, 1296024    

Description Arthy Loganathan 2015-12-30 12:53:17 UTC
Description of problem:
Unable to modify quota hard limit on tier volume after disk limit got exceeded.
The hard limit value is unreliable.

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

How reproducible:
Always

Steps to Reproduce:
1. Create a volume.
2. Enable quota. Set quota hard limit (350MB)
3. Attach tier to the volume.
4. Set watermark low and high limits.
5. Mount the volume and write IOs till the hard limit is reached.
6. Modify quota hard limit. (450MB or 250MB)

Actual results:
Quota hard limit should get set correctly.

Expected results:
Unable to modify quota hard limit once the hard limit is reached.

Additional info:

[root@zod ~]# gluster volume quota testvol limit-usage / 450MB
volume quota : success
[root@zod ~]# gluster volume quota testvol list
                  Path                   Hard-limit  Soft-limit      Used  Available  Soft-limit exceeded? Hard-limit exceeded?
-------------------------------------------------------------------------------------------------------------------------------
/                                        350.0MB     80%(280.0MB)  363.6MB  0Bytes             Yes                  Yes
[root@zod ~]# gluster volume quota testvol list
                  Path                   Hard-limit  Soft-limit      Used  Available  Soft-limit exceeded? Hard-limit exceeded?
-------------------------------------------------------------------------------------------------------------------------------
/                                        350.0MB     80%(280.0MB)  363.6MB  0Bytes             Yes                  Yes
[root@zod ~]# gluster volume quota testvol list
                  Path                   Hard-limit  Soft-limit      Used  Available  Soft-limit exceeded? Hard-limit exceeded?
-------------------------------------------------------------------------------------------------------------------------------
/                                        350.0MB     80%(280.0MB)  363.6MB  0Bytes             Yes                  Yes
[root@zod ~]# gluster volume quota testvol list
                  Path                   Hard-limit  Soft-limit      Used  Available  Soft-limit exceeded? Hard-limit exceeded?
-------------------------------------------------------------------------------------------------------------------------------
/                                        450.0MB     80%(360.0MB)  363.6MB  86.4MB             Yes                   No
[root@zod ~]# gluster volume quota testvol list
                  Path                   Hard-limit  Soft-limit      Used  Available  Soft-limit exceeded? Hard-limit exceeded?
-------------------------------------------------------------------------------------------------------------------------------
/                                        350.0MB     80%(280.0MB)  363.6MB  0Bytes             Yes                  Yes


sosreport link: http://rhsqe-repo.lab.eng.blr.redhat.com/sosreports/sosreport-sysreg-prod-20151230174354.tar.xz

Comment 2 Manikandan 2016-01-05 10:47:08 UTC
Hi,

The problem is because 'gluster v quota <VOLNAME> list' command does a getxattr through the auxiliary mount point and lists the usage. Normal mount point loads the graph when an attach-tier happens whereas quota needs an auxiliary mount point which uses unix domain socket is failing to load the volgraph when an attach tier happens. Hence the limit is set only on the cold tier and not on the hot tier. Since the limit is not set on the hot tier, when list command is issued, it gets limit value from either cold tier or hot tier which makes quota hard limit value unreliable. 

We are investigating the issue further.

--
Thanks,
Manikandan Selvaganesh.

Comment 3 Vijaikumar Mallikarjuna 2016-01-06 07:03:50 UTC
Patch submitted upstream: http://review.gluster.org/#/c/13174/

Comment 5 Anil Shah 2016-01-14 11:30:37 UTC
[root@rhs001 ~]# gluster v quota vol0 list
                  Path                   Hard-limit  Soft-limit      Used  Available  Soft-limit exceeded? Hard-limit exceeded?
-------------------------------------------------------------------------------------------------------------------------------
/                                        250.0MB     80%(200.0MB)  266.0MB  0Bytes             Yes                  Yes
[root@rhs001 ~]# gluster v quota vol0 limit-usage / 350MB
volume quota : success
[root@rhs001 ~]# gluster v quota vol0 limit-usage / 200MB
volume quota : success


Bug verified on build glusterfs-3.7.5-15.el7rhgs.x86_64.

Comment 7 errata-xmlrpc 2016-03-01 06:06:29 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-0193.html