Bug 1190108 - RFE: Quota for inode count
Summary: RFE: Quota for inode count
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: GlusterFS
Classification: Community
Component: quota
Version: mainline
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Sachin Pandit
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: 958325 1196082 1202244 1202250 1218170 1361102
TreeView+ depends on / blocked
 
Reported: 2015-02-06 10:52 UTC by Vijaikumar Mallikarjuna
Modified: 2016-07-28 10:57 UTC (History)
6 users (show)

Fixed In Version: glusterfs-3.7.0beta1
Clone Of:
: 1196082 1361102 (view as bug list)
Environment:
Last Closed: 2015-05-14 17:26:27 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Embargoed:


Attachments (Terms of Use)

Description Vijaikumar Mallikarjuna 2015-02-06 10:52:23 UTC
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

Comment 1 Anand Avati 2015-02-25 14:07:21 UTC
REVIEW: http://review.gluster.org/9635 (cli/glusterd : Introducing inode quota.) posted (#3) for review on master by Sachin Pandit (spandit)

Comment 2 Anand Avati 2015-02-26 06:47:49 UTC
REVIEW: http://review.gluster.org/9635 (features/quota : Introducing inode quota.) posted (#4) for review on master by Sachin Pandit (spandit)

Comment 3 Anand Avati 2015-02-27 10:39:42 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#1) for review on master by Sachin Pandit (spandit)

Comment 4 Anand Avati 2015-03-01 07:47:17 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#2) for review on master by Sachin Pandit (spandit)

Comment 5 Anand Avati 2015-03-01 14:35:02 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#3) for review on master by Sachin Pandit (spandit)

Comment 6 Anand Avati 2015-03-02 12:58:44 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#4) for review on master by Sachin Pandit (spandit)

Comment 7 Anand Avati 2015-03-03 06:44:07 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#5) for review on master by Sachin Pandit (spandit)

Comment 8 Anand Avati 2015-03-03 10:55:42 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#6) for review on master by Sachin Pandit (spandit)

Comment 9 Anand Avati 2015-03-04 09:59:51 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#7) for review on master by Sachin Pandit (spandit)

Comment 10 Anand Avati 2015-03-04 14:52:08 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#8) for review on master by Sachin Pandit (spandit)

Comment 11 Anand Avati 2015-03-05 14:49:06 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#9) for review on master by Sachin Pandit (spandit)

Comment 12 Anand Avati 2015-03-05 14:51:52 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#10) for review on master by Sachin Pandit (spandit)

Comment 13 Anand Avati 2015-03-06 10:34:59 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#11) for review on master by Sachin Pandit (spandit)

Comment 14 Anand Avati 2015-03-09 11:27:01 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#12) for review on master by Sachin Pandit (spandit)

Comment 15 Anand Avati 2015-03-09 14:50:36 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#13) for review on master by Sachin Pandit (spandit)

Comment 16 Anand Avati 2015-03-09 19:23:16 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#14) for review on master by Sachin Pandit (spandit)

Comment 17 Anand Avati 2015-03-11 06:07:27 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#15) for review on master by Sachin Pandit (spandit)

Comment 18 Anand Avati 2015-03-11 09:39:31 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#16) for review on master by Sachin Pandit (spandit)

Comment 19 Anand Avati 2015-03-12 17:01:11 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#17) for review on master by Sachin Pandit (spandit)

Comment 20 Anand Avati 2015-03-13 04:31:38 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#18) for review on master by Sachin Pandit (spandit)

Comment 21 Anand Avati 2015-03-13 10:08:41 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota.) posted (#19) for review on master by Sachin Pandit (spandit)

Comment 22 Anand Avati 2015-03-13 10:15:45 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#20) for review on master by Sachin Pandit (spandit)

Comment 23 Anand Avati 2015-03-16 12:07:33 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#21) for review on master by Sachin Pandit (spandit)

Comment 24 Anand Avati 2015-03-16 12:34:59 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#22) for review on master by Sachin Pandit (spandit)

Comment 25 Anand Avati 2015-03-18 05:09:56 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#23) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 26 Anand Avati 2015-03-18 05:26:31 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#24) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 27 Anand Avati 2015-03-18 10:08:17 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#25) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 28 Anand Avati 2015-03-18 11:34:15 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#26) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 29 Anand Avati 2015-03-18 17:52:29 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#27) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 30 Anand Avati 2015-03-18 17:58:45 UTC
REVIEW: http://review.gluster.org/9769 (features/quota : Introducing inode quota) posted (#28) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 31 Anand Avati 2015-03-19 01:24:17 UTC
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>

Comment 32 Anand Avati 2015-04-09 09:52:55 UTC
REVIEW: http://review.gluster.org/10171 (admin/doc : Object count for quota) posted (#1) for review on master by Sachin Pandit (spandit)

Comment 33 Anand Avati 2015-04-10 06:24:20 UTC
REVIEW: http://review.gluster.org/10171 (admin/doc : Object count for quota) posted (#2) for review on master by Sachin Pandit (spandit)

Comment 34 Anand Avati 2015-04-10 06:27:44 UTC
REVIEW: http://review.gluster.org/10171 (admin/doc : Object count for quota) posted (#3) for review on master by Sachin Pandit (spandit)

Comment 35 Anand Avati 2015-04-10 08:44:47 UTC
REVIEW: http://review.gluster.org/10171 (admin/doc : Object count for quota) posted (#4) for review on master by Sachin Pandit (spandit)

Comment 36 Anand Avati 2015-04-10 09:23:43 UTC
REVIEW: http://review.gluster.org/10171 (admin/doc : Object count for quota) posted (#5) for review on master by Sachin Pandit (spandit)

Comment 37 Anand Avati 2015-04-14 04:18:13 UTC
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>

Comment 38 Niels de Vos 2015-05-14 17:26:27 UTC
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 39 Niels de Vos 2015-05-14 17:28:21 UTC
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 40 Niels de Vos 2015-05-14 17:35:15 UTC
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


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