Bug 1361102 - RFE: Quota for inode count
Summary: RFE: Quota for inode count
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Gluster Storage
Classification: Red Hat Storage
Component: quota
Version: rhgs-3.1
Hardware: Unspecified
OS: Unspecified
unspecified
low
Target Milestone: ---
: ---
Assignee: Raghavendra G
QA Contact: Rahul Hinduja
URL:
Whiteboard:
Depends On: 1190108
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-07-28 10:57 UTC by Manikandan
Modified: 2018-11-19 09:07 UTC (History)
13 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1190108
Environment:
Last Closed: 2018-11-19 09:07:50 UTC
Embargoed:


Attachments (Terms of Use)

Description Manikandan 2016-07-28 10:57:09 UTC
+++ This bug was initially created as a clone of Bug #1190108 +++

Implement a new feature for accounting inode objects and allow to limit number of inodes per directory.

Here is the feature page: http://www.gluster.org/community/documentation/index.php/Features/Object_Count

--- Additional comment from Anand Avati on 2015-02-25 09:07:21 EST ---

REVIEW: http://review.gluster.org/9635 (cli/glusterd : Introducing inode quota.) posted (#3) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-02-26 01:47:49 EST ---

REVIEW: http://review.gluster.org/9635 (features/quota : Introducing inode quota.) posted (#4) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-02-27 05:39:42 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#1) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-01 02:47:17 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#2) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-01 09:35:02 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#3) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-02 07:58:44 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#4) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-03 01:44:07 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#5) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-03 05:55:42 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#6) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-04 04:59:51 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#7) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-04 09:52:08 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#8) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-05 09:49:06 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#9) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-05 09:51:52 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#10) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-06 05:34:59 EST ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#11) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-09 07:27:01 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#12) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-09 10:50:36 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#13) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-09 15:23:16 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#14) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-11 02:07:27 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#15) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-11 05:39:31 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#16) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-12 13:01:11 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#17) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-13 00:31:38 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#18) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-13 06:08:41 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#19) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-13 06:15:45 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#20) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-16 08:07:33 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#21) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-16 08:34:59 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#22) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-03-18 01:09:56 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#23) for review on master by Vijaikumar Mallikarjuna (vmallika)

--- Additional comment from Anand Avati on 2015-03-18 01:26:31 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#24) for review on master by Vijaikumar Mallikarjuna (vmallika)

--- Additional comment from Anand Avati on 2015-03-18 06:08:17 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#25) for review on master by Vijaikumar Mallikarjuna (vmallika)

--- Additional comment from Anand Avati on 2015-03-18 07:34:15 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#26) for review on master by Vijaikumar Mallikarjuna (vmallika)

--- Additional comment from Anand Avati on 2015-03-18 13:52:29 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#27) for review on master by Vijaikumar Mallikarjuna (vmallika)

--- Additional comment from Anand Avati on 2015-03-18 13:58:45 EDT ---

REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#28) for review on master by Vijaikumar Mallikarjuna (vmallika)

--- Additional comment from Anand Avati on 2015-03-18 21:24:17 EDT ---

COMMIT: http://review.gluster.org/9769 committed in master by Vijay Bellur (vbellur) 
------
commit 3e18f093974c85ac92a4c48f0cd13aa9ff9c5cac
Author: vmallika <vmallika>
Date:   Wed Mar 18 23:17:23 2015 +0530

    features/quota : Introducing inode quota
    
    ==========================================================================
                                 Inode quota
    ==========================================================================
    = Currently, the only way to retrieve the number of files/objects in a   =
    = directory or volume is to do a crawl of the entire directory/volume.   =
    = This is expensive and is not scalable.                                 =
    =                                                                        =
    = The proposed mechanism will provide an easier alternative to determine =
    = the count of files/objects in a directory or volume.                   =
    =                                                                        =
    = The new mechanism proposes to store count of objects/files as part of  =
    = an extended attribute of a directory. Each directory's extended        =
    = attribute value will indicate the number of files/objects present      =
    = in a tree with the directory being considered as the root of the tree. =
    =                                                                        =
    = The count value can be accessed by performing a getxattr().            =
    = Cluster translators like afr, dht and stripe will perform aggregation  =
    = of count values from various bricks when getxattr() happens on the key =
    = associated with file/object count.                                     =
    
    A new interface is introduced:
    ------------------------------
            limit-objects  : limit the number of inodes at directory level
            list-objects   : list the directories where the limit is set
            remove-objects : remove the limit from the directory
    
    ==========================================================================
    
    CLI COMMAND:
    gluster volume quota <volname> limit-objects <path> <number> [<percent>]
    
    * <number> is a hard-limit for number of objects limitation for path "<path>"
      If hard-limit is exceeded, creation of file/directory is no longer
    permitted.
    
    * <percent> is a soft-limit for number of objects creation for path "<path>"
      If soft-limit is exceeded, a warning is issued for each creation.
    
    CLI COMMAND:
    gluster volume quota <volname> remove-objects [path]
    
    ==========================================================================
    
    CLI COMMAND:
    gluster volume quota <volname> list-objects [path] ...
    
    Sample output:
    ------------------
      Path                   Hard-limit Soft-limit   Used  Available
    Soft-limit exceeded?
    Hard-limit exceeded?
      ------------------------------------------------------------------------
    --------------------------------------
      /dir                      10       80%          10       0
    Yes
            Yes
    
    ==========================================================================
    
    [root@snapshot-28 dir]# ls
    a  b  file11  file12  file13  file14  file15  file16  file17
    [root@snapshot-28 dir]# touch a1
    touch: cannot touch `a1': Disk quota exceeded
    * Nine files are created in directory "dir" and directory is included in
    * the
    count too. Hence the limit "10" is reached and further file creation
    fails
    
    ==========================================================================
    
    Note: We have also done some re-factoring in cli for volume name
    validation. New function cli_validate_volname is created
    
    ==========================================================================
    
    Change-Id: I1823497de4f790a2a20ebb1770293472ea33ee2b
    BUG: 1190108
    Signed-off-by: Sachin Pandit <spandit>
    Signed-off-by: vmallika <vmallika>
    Reviewed-on: http://review.gluster.org/9769
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Vijay Bellur <vbellur>

--- Additional comment from Anand Avati on 2015-04-09 05:52:55 EDT ---

REVIEW: http://review.gluster.org/10171 (admin/doc : Object count for quota) posted (#1) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-04-10 02:24:20 EDT ---

REVIEW: http://review.gluster.org/10171 (admin/doc : Object count for quota) posted (#2) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-04-10 02:27:44 EDT ---

REVIEW: http://review.gluster.org/10171 (admin/doc : Object count for quota) posted (#3) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-04-10 04:44:47 EDT ---

REVIEW: http://review.gluster.org/10171 (admin/doc : Object count for quota) posted (#4) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-04-10 05:23:43 EDT ---

REVIEW: http://review.gluster.org/10171 (admin/doc : Object count for quota) posted (#5) for review on master by Sachin Pandit (spandit)

--- Additional comment from Anand Avati on 2015-04-14 00:18:13 EDT ---

COMMIT: http://review.gluster.org/10171 committed in master by Kaleb KEITHLEY (kkeithle) 
------
commit d3b52c8283eb4c85018a5055a0dbe628b5bd2d29
Author: Sachin Pandit <spandit>
Date:   Tue Apr 7 11:39:29 2015 +0530

    admin/doc : Object count for quota
    
    Change-Id: I271cca911f6dd1f481634063919a587843d93e50
    BUG: 1190108
    Signed-off-by: Sachin Pandit <spandit>
    Reviewed-on: http://review.gluster.org/10171
    Reviewed-by: Vijaikumar Mallikarjuna <vmallika>
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Kaleb KEITHLEY <kkeithle>

--- Additional comment from Niels de Vos on 2015-05-14 13:26:27 EDT ---

This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.7.0, please open a new bug report.

glusterfs-3.7.0 has been announced on the Gluster mailinglists [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution.

[1] http://thread.gmane.org/gmane.comp.file-systems.gluster.devel/10939
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user

--- Additional comment from Niels de Vos on 2015-05-14 13:28:21 EDT ---

This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.7.0, please open a new bug report.

glusterfs-3.7.0 has been announced on the Gluster mailinglists [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution.

[1] http://thread.gmane.org/gmane.comp.file-systems.gluster.devel/10939
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user

--- Additional comment from Niels de Vos on 2015-05-14 13:35:15 EDT ---

This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.7.0, please open a new bug report.

glusterfs-3.7.0 has been announced on the Gluster mailinglists [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution.

[1] http://thread.gmane.org/gmane.comp.file-systems.gluster.devel/10939
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user

Comment 8 Anil Shah 2017-01-02 05:49:32 UTC
Tested different scenarios with inode quota, with enabling uss, bitroot.
Bug verified on build glusterfs-3.8.4-10.el7rhgs.x86_64

Comment 16 hari gowtham 2018-11-19 09:07:50 UTC
Hi,

As the bug was verified earlier, I'm closing this.

-Hari.


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