Bug 1322299

Summary: DHT: Rebalance hang while migrating the files of disperse volume
Product: [Community] GlusterFS Reporter: Ashish Pandey <aspandey>
Component: disperseAssignee: Ashish Pandey <aspandey>
Status: CLOSED EOL QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 3.7.10CC: bugs, kaushal, mzywusko, nbalacha, pkarampu, smohan
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1304988 Environment:
Last Closed: 2017-03-08 10:59:59 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: 1264310, 1304988    
Bug Blocks:    

Comment 1 Vijay Bellur 2016-03-30 09:13:21 UTC
REVIEW: http://review.gluster.org/13849 (cluster/ec: Rebalance hangs during rename) posted (#1) for review on release-3.7 by Ashish Pandey (aspandey)

Comment 2 Vijay Bellur 2016-03-31 12:45:55 UTC
COMMIT: http://review.gluster.org/13849 committed in release-3.7 by Pranith Kumar Karampuri (pkarampu) 
------
commit 3d34c495d547866a533bc0614b14163381830095
Author: Ashish Pandey <aspandey>
Date:   Wed Feb 17 15:57:02 2016 +0530

    cluster/ec: Rebalance hangs during rename
    
    Problem:
    During the rename of a particular file (ec
    is holding blocking inodelk on the parent
    directory), if the rename of another file
    under the same directory comes. EC does not
    release the lock and goes ahead and renames
    the "new" file with the "already held lock".
    
    That causes rebalance process to be blocked
    on a lock which has been acquired by rename.
    
    Solution:
    While rename fop comes, ec takes blocking inodelk
    on old and new parent of the file. Before releasing,
    every lock held by ec, it waits for some "time" to
    see if that lock can be reused by the next fop.
    If within this "time" some other request comes,
    it releases this lock based on condition
    "lock count > 1"
    
    To get this "lock count" for rename fop, we have
    implemented "pl_rename" in feature/lock. Also,
    on ec side, changed the condition to release the lock
    based on the type of fop and old and new parent
    directories.
    
    master-
    http://review.gluster.org/#/c/13460/
    
    Change-Id: I979dbab1185df962e8f305a6074ae1186ffe7db0
    Bug: 1322299
    Signed-off-by: Ashish Pandey <aspandey>
    Reviewed-on: http://review.gluster.org/13849
    Smoke: Gluster Build System <jenkins.com>
    CentOS-regression: Gluster Build System <jenkins.com>
    NetBSD-regression: NetBSD Build System <jenkins.org>
    Reviewed-by: Pranith Kumar Karampuri <pkarampu>

Comment 3 Kaushal 2016-04-01 08:36:34 UTC
Change 3d34c495d547866a533bc0614b14163381830095 is being reverted from the release-3.7 branch as it breaks building packages.

Comment 4 Kaushal 2017-03-08 10:59:59 UTC
This bug is getting closed because GlusteFS-3.7 has reached its end-of-life.

Note: This bug is being closed using a script. No verification has been performed to check if it still exists on newer releases of GlusterFS.
If this bug still exists in newer GlusterFS releases, please reopen this bug against the newer release.