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
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.
Patch submitted upstream: http://review.gluster.org/#/c/13174/
[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.
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