Bug 1270769 - quota/marker: dir count in inode quota is not atomic
Summary: quota/marker: dir count in inode quota is not atomic
Alias: None
Product: GlusterFS
Classification: Community
Component: quota
Version: 3.7.5
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Vijaikumar Mallikarjuna
QA Contact:
Depends On: 1243797 1243798
Blocks: glusterfs-3.7.6
TreeView+ depends on / blocked
Reported: 2015-10-12 11:01 UTC by Vijaikumar Mallikarjuna
Modified: 2016-05-11 22:47 UTC (History)
4 users (show)

Fixed In Version: glusterfs-3.7.6
Doc Type: Bug Fix
Doc Text:
Clone Of: 1243798
Last Closed: 2015-11-17 05:59:41 UTC
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:

Attachments (Terms of Use)

Comment 1 Vijay Bellur 2015-10-12 11:05:15 UTC
REVIEW: http://review.gluster.org/12341 (quota/marker: dir_count accounting is not atomic) posted (#1) for review on release-3.7 by Vijaikumar Mallikarjuna (vmallika@redhat.com)

Comment 2 Vijay Bellur 2015-10-13 10:43:07 UTC
COMMIT: http://review.gluster.org/12341 committed in release-3.7 by Raghavendra G (rgowdapp@redhat.com) 
commit 130190a3e1f2226883284aedbd63a9505fd0b702
Author: vmallika <vmallika@redhat.com>
Date:   Wed Oct 7 15:24:46 2015 +0530

    quota/marker: dir_count accounting is not atomic
    This is a backport of http://review.gluster.org/#/c/11694/
    Consider below scenario:
    Quota enabled on pre-existing data
    Now quota-crawl process will start healing xattrs
    Now if write is performed where healing is not complete, there is a
    possibility that 'update txn' is started before 'create xattr txn', in
    this case dir count can be missed on a dir where quota size xattr is not
    yet created.
    Solution is to get size xattr and if xattr is missing, add 1 for
    dir_count, this requires one additional fop if done in marker during
    each update iteration
    Better solution is to us xattrop GF_XATTROP_ADD_ARRAY64_WITH_DEFAULT
    > Change-Id: Idc8978860a3914e70c98f96effeff52e9a24e6ba
    > BUG: 1243798
    > Signed-off-by: vmallika <vmallika@redhat.com>
    > Reviewed-on: http://review.gluster.org/11694
    > Tested-by: NetBSD Build System <jenkins@build.gluster.org>
    > Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
    Change-Id: If553372c31093d86fabe5a2ae5044a2cff28c3dc
    BUG: 1270769
    Signed-off-by: vmallika <vmallika@redhat.com>
    Reviewed-on: http://review.gluster.org/12341
    Tested-by: Gluster Build System <jenkins@build.gluster.com>
    Tested-by: NetBSD Build System <jenkins@build.gluster.org>
    Reviewed-by: Raghavendra G <rgowdapp@redhat.com>

Comment 3 Raghavendra Talur 2015-11-17 05:59:41 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.6, please open a new bug report.

glusterfs-3.7.6 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://www.gluster.org/pipermail/gluster-users/2015-November/024359.html
[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.