Bug 1229684

Summary: Quota: Soft limit and hard limit alert message are not getting logged in bricks logs in disperse volume
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Anil Shah <ashah>
Component: quotaAssignee: Sanoj Unnikrishnan <sunnikri>
Status: CLOSED DUPLICATE QA Contact: Vinayak Papnoi <vpapnoi>
Severity: high Docs Contact:
Priority: low    
Version: rhgs-3.1CC: rhs-bugs, smohan, sunnikri
Target Milestone: ---Keywords: Triaged, ZStream
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-02-22 06:26:43 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: 1223636, 1265532    

Description Anil Shah 2015-06-09 12:24:22 UTC
Description of problem:

On disperse volume, when  the soft and hard limit is reached, alert message are not getting logged in bricks logs


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

[root@darkknight bricks]# rpm -qa | grep glusterfs
glusterfs-3.7.0-3.el6rhs.x86_64
glusterfs-server-3.7.0-3.el6rhs.x86_64
glusterfs-api-3.7.0-3.el6rhs.x86_64
glusterfs-geo-replication-3.7.0-3.el6rhs.x86_64
glusterfs-libs-3.7.0-3.el6rhs.x86_64
glusterfs-fuse-3.7.0-3.el6rhs.x86_64
glusterfs-cli-3.7.0-3.el6rhs.x86_64
glusterfs-client-xlators-3.7.0-3.el6rhs.x86_64


How reproducible:

100%

Steps to Reproduce:
1. Create 8+4 disperse volume
2. Mount volume as FUSE or NFS mount
3. Enable quota on volume and set limit-usage on root of the volume
4. Create some files from mount so that disk quota exceeds


Actual results:

hard and soft limit exceeds messages are not getting logged in brick logs

Expected results:

Soft and hard limit exceeds alert should be logged in bricks logs.

Additional info:


[root@darkknight bricks]# gluster v info ecvol
 
Volume Name: ecvol
Type: Disperse
Volume ID: 7c35b0f7-62f8-4667-8e68-d99f31b3a0ed
Status: Started
Number of Bricks: 1 x (8 + 4) = 12
Transport-type: tcp
Bricks:
Brick1: 10.70.33.214:/rhs/brick1/ec1
Brick2: 10.70.33.219:/rhs/brick1/ec2
Brick3: 10.70.33.225:/rhs/brick1/ec3
Brick4: 10.70.44.13:/rhs/brick1/ec2
Brick5: 10.70.33.214:/rhs/brick1/ec4
Brick6: 10.70.33.219:/rhs/brick1/ec6
Brick7: 10.70.33.225:/rhs/brick1/ec7
Brick8: 10.70.44.13:/rhs/brick1/ec8
Brick9: 10.70.33.214:/rhs/brick1/ec9
Brick10: 10.70.33.219:/rhs/brick1/ec10
Brick11: 10.70.33.225:/rhs/brick1/ec11
Brick12: 10.70.44.13:/rhs/brick1/ec12
Options Reconfigured:
features.hard-timeout: 0
features.soft-timeout: 0
features.inode-quota: on
features.quota: on
features.uss: enable
performance.readdir-ahead: on

Comment 3 Vijaikumar Mallikarjuna 2015-12-15 11:09:38 UTC
*** Bug 1282725 has been marked as a duplicate of this bug. ***

Comment 4 Vijaikumar Mallikarjuna 2015-12-15 11:13:37 UTC
*** Bug 1282719 has been marked as a duplicate of this bug. ***

Comment 5 Vijaikumar Mallikarjuna 2015-12-15 11:20:42 UTC
Sometime alert message will not be displayed because of parallel writes:

Consider below scenario in the quota xlator
    
T1 - write with delta1 bytes on fd1
     check_limit sees that delta1 bytes is not exceeding soft limit
T2 - write with delta2 bytes on fd1
     check_limit sees that delta2 bytes is not exceeding soft limit
T3 - delta1 and delta2 bytes are written to the disk.
    
Here delta1 and delta2 are checked separately and do not exceed
limit, but they together exceed the limit which is not checked.
    
We need to find a solution to solve this problem.

Comment 6 Vijaikumar Mallikarjuna 2016-04-15 17:56:51 UTC
Patch submitted upstream: http://review.gluster.org/#/c/14006/

Comment 7 Vijaikumar Mallikarjuna 2016-04-15 18:43:24 UTC
Patch# 14006 doesn't fix the problem completely