Bug 1188636 - RFE: Quota marker needs to be re-factored by replacing WIND and UNWIND with SYNCOP
Summary: RFE: Quota marker needs to be re-factored by replacing WIND and UNWIND with S...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: GlusterFS
Classification: Community
Component: quota
Version: mainline
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Vijaikumar Mallikarjuna
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: 958325 qe_tracker_everglades 1196081 glusterfs-3.7.0
TreeView+ depends on / blocked
 
Reported: 2015-02-03 13:08 UTC by Vijaikumar Mallikarjuna
Modified: 2016-05-11 22:48 UTC (History)
6 users (show)

Fixed In Version: glusterfs-3.7dev-0.869.gitf5e4c94.el6
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 1196081 (view as bug list)
Environment:
Last Closed: 2015-05-14 17:26:26 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Embargoed:


Attachments (Terms of Use)

Description Vijaikumar Mallikarjuna 2015-02-03 13:08:14 UTC
Description of problem:

Currently in marker as a process of accounting quota, it does multiple STACK WIND and UNWIND. This makes code more complicated. By changing this to SYNCOP, it will be more readable and also easier to debug the problems.

Comment 1 Anand Avati 2015-02-03 13:21:09 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#1) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 2 Anand Avati 2015-02-05 06:32:16 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#2) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 3 Anand Avati 2015-02-05 10:24:04 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#3) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 4 Anand Avati 2015-02-05 13:42:03 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#4) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 5 Anand Avati 2015-02-06 08:44:06 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#5) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 6 Anand Avati 2015-02-11 07:10:29 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#6) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 7 Anand Avati 2015-02-11 07:17:04 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#7) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 8 Anand Avati 2015-02-12 08:03:18 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#8) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 9 Anand Avati 2015-02-12 08:06:06 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#9) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 10 Anand Avati 2015-02-12 09:41:45 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#10) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 11 Anand Avati 2015-02-12 12:00:49 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#11) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 12 Anand Avati 2015-02-12 12:59:34 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#12) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 13 Anand Avati 2015-02-13 17:07:54 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#13) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 14 Anand Avati 2015-02-16 11:15:28 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#14) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 15 Anand Avati 2015-02-17 05:21:05 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#15) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 16 Anand Avati 2015-02-17 07:37:33 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#16) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 17 Anand Avati 2015-02-17 13:47:11 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#17) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 18 Anand Avati 2015-02-18 09:37:55 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#18) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 19 Anand Avati 2015-02-18 11:52:00 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#19) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 20 Anand Avati 2015-02-19 06:31:12 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring by replacing WIND and UNWIND with SYNCOP) posted (#20) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 21 Anand Avati 2015-02-21 05:58:19 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#21) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 22 Anand Avati 2015-03-01 07:47:13 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#22) for review on master by Sachin Pandit (spandit)

Comment 23 Anand Avati 2015-03-01 14:34:58 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach.) posted (#23) for review on master by Sachin Pandit (spandit)

Comment 24 Anand Avati 2015-03-02 12:58:40 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach.) posted (#24) for review on master by Sachin Pandit (spandit)

Comment 25 Anand Avati 2015-03-03 06:43:34 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach.) posted (#25) for review on master by Sachin Pandit (spandit)

Comment 26 Anand Avati 2015-03-03 10:55:39 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#26) for review on master by Sachin Pandit (spandit)

Comment 27 Anand Avati 2015-03-04 09:59:47 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach.) posted (#27) for review on master by Sachin Pandit (spandit)

Comment 28 Anand Avati 2015-03-04 14:19:04 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#28) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 29 Anand Avati 2015-03-04 14:52:03 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach.) posted (#29) for review on master by Sachin Pandit (spandit)

Comment 30 Anand Avati 2015-03-05 05:28:44 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#30) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 31 Anand Avati 2015-03-05 09:50:07 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#31) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 32 Anand Avati 2015-03-05 11:52:02 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#32) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 33 Anand Avati 2015-03-06 01:25:03 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#33) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 34 Anand Avati 2015-03-06 03:45:37 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#34) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 35 Anand Avati 2015-03-09 14:14:41 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#35) for review on master by Pranith Kumar Karampuri (pkarampu)

Comment 36 Anand Avati 2015-03-09 14:14:55 UTC
REVIEW: http://review.gluster.org/9839 (Fix dictionary leaks in ancestry-building code) posted (#1) for review on master by Pranith Kumar Karampuri (pkarampu)

Comment 37 Anand Avati 2015-03-09 14:36:57 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach) posted (#36) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 38 Anand Avati 2015-03-09 14:37:01 UTC
REVIEW: http://review.gluster.org/9839 (Fix dictionary leaks in ancestry-building code.) posted (#2) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 39 Anand Avati 2015-03-09 17:52:19 UTC
COMMIT: http://review.gluster.org/9839 committed in master by Vijay Bellur (vbellur) 
------
commit 8612553ffe3d87481c70911a9b8491fb5f4139b5
Author: Pranith Kumar K <pkarampu>
Date:   Mon Mar 9 19:35:14 2015 +0530

    Fix dictionary leaks in ancestry-building code.
    
    Change-Id: I7a4a24ed95f897d1c14d89f3869c20ba40f85b7f
    BUG: 1188636
    Signed-off-by: Pranith Kumar K <pkarampu>
    Reviewed-on: http://review.gluster.org/9839
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Vijaikumar Mallikarjuna <vmallika>
    Reviewed-by: Vijay Bellur <vbellur>

Comment 40 Anand Avati 2015-03-10 05:19:47 UTC
REVIEW: http://review.gluster.org/9567 (Quota/marker : Support for inode quota.) posted (#37) for review on master by Sachin Pandit (spandit)

Comment 41 Anand Avati 2015-03-10 05:20:21 UTC
REVIEW: http://review.gluster.org/9567 (Quota/marker : Support for inode quota.) posted (#38) for review on master by Sachin Pandit (spandit)

Comment 42 Anand Avati 2015-03-11 08:26:40 UTC
REVIEW: http://review.gluster.org/9567 (Quota/marker : Support for inode quota.) posted (#39) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 43 Anand Avati 2015-03-11 12:37:29 UTC
REVIEW: http://review.gluster.org/9858 (syncop: assign lk_owner for the newly created frame) posted (#1) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 44 Anand Avati 2015-03-13 04:31:32 UTC
REVIEW: http://review.gluster.org/9567 (Quota/marker : Support for inode quota) posted (#40) for review on master by Sachin Pandit (spandit)

Comment 45 Anand Avati 2015-03-13 10:08:37 UTC
REVIEW: http://review.gluster.org/9567 (Quota: RFE, marker refactoring with syncop approach.) posted (#41) for review on master by Sachin Pandit (spandit)

Comment 46 Anand Avati 2015-03-13 10:15:25 UTC
REVIEW: http://review.gluster.org/9567 (Quota/marker : Support for inode quota) posted (#42) for review on master by Sachin Pandit (spandit)

Comment 47 Anand Avati 2015-03-15 03:18:15 UTC
COMMIT: http://review.gluster.org/9858 committed in master by Vijay Bellur (vbellur) 
------
commit 9f71b25f34a24741496875ab947f6f9c95ec277f
Author: vmallika <vmallika>
Date:   Wed Mar 11 18:03:47 2015 +0530

    syncop: assign lk_owner for the newly created frame
    
    syncop_inodelk doesn't work properly as lk_owner is not set
    in the frame created by 'synctask_create'.
    There is a possibility that more than one thread can acquire inode lock
    with syncop_inodelk
    
    Change-Id: I8193edb0d24b3a6e3a3f6a0c5d7ab5a1be8e7daf
    BUG: 1188636
    Signed-off-by: vmallika <vmallika>
    Reviewed-on: http://review.gluster.org/9858
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Krishnan Parthasarathi <kparthas>
    Reviewed-by: Pranith Kumar Karampuri <pkarampu>
    Reviewed-by: Vijay Bellur <vbellur>

Comment 48 Anand Avati 2015-03-17 14:39:57 UTC
REVIEW: http://review.gluster.org/9567 (Quota/marker : Support for inode quota) posted (#43) for review on master by Vijaikumar Mallikarjuna (vmallika)

Comment 49 Anand Avati 2015-03-18 04:07:09 UTC
COMMIT: http://review.gluster.org/9567 committed in master by Vijay Bellur (vbellur) 
------
commit 7970183f4c730d4aca3cfaa106fde015a0fbc415
Author: vmallika <vmallika>
Date:   Tue Mar 17 20:05:19 2015 +0530

    Quota/marker : Support for 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 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.
    
    Currently file usage is accounted in marker by doing multiple FOPs
    like setting and getting xattrs. Doing this with STACK WIND and
    UNWIND can be harder to debug as involves multiple callbacks.
    In this code we are replacing current mechanism with syncop approach
    as syncop code is much simpler to follow and help us implement inode
    quota in an organized way.
    
    Change-Id: Ibf366fbe07037284e89a241ddaff7750fc8771b4
    BUG: 1188636
    Signed-off-by: vmallika <vmallika>
    Signed-off-by: Sachin Pandit <spandit>
    Reviewed-on: http://review.gluster.org/9567
    Reviewed-by: Vijay Bellur <vbellur>
    Tested-by: Vijay Bellur <vbellur>

Comment 50 Niels de Vos 2015-05-14 17:26:26 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 51 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 52 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.