Bug 1310544 - DHT: Take blocking locks while renaming files
DHT: Take blocking locks while renaming files
Status: CLOSED CURRENTRELEASE
Product: GlusterFS
Classification: Community
Component: distribute (Show other bugs)
3.7.7
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Sakshi
:
Depends On: 1304966
Blocks: 1305836 glusterfs-3.7.9
  Show dependency treegraph
 
Reported: 2016-02-22 03:18 EST by Sakshi
Modified: 2016-07-31 21:22 EDT (History)
2 users (show)

See Also:
Fixed In Version: glusterfs-3.7.9
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1304966
Environment:
Last Closed: 2016-04-15 01:15:18 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Sakshi 2016-02-22 03:18:42 EST
+++ This bug was initially created as a clone of Bug #1304966 +++

Description of problem:
DHT takes non-blocking locks while renaming files. During parallel renames and parallel rebalance and rename clients might fail with EBUSY or ESTALE errors. Hence to avoid application discontinuity renaming of files must take blocking locks.

Hence it is better to take blocking locks for renaming files.

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

--- Additional comment from Vijay Bellur on 2016-02-05 04:26:34 EST ---

REVIEW: http://review.gluster.org/13366 (dht: file rename must take blocking inode locks) posted (#1) for review on master by Sakshi Bansal

--- Additional comment from Vijay Bellur on 2016-02-22 01:39:36 EST ---

COMMIT: http://review.gluster.org/13366 committed in master by Raghavendra G (rgowdapp@redhat.com) 
------
commit f02dc88786afea06e6b064a724803c82a0af90ba
Author: Sakshi Bansal <sabansal@redhat.com>
Date:   Fri Feb 5 14:51:10 2016 +0530

    dht: file rename must take blocking inode locks
    
    Currently DHT takes non-blocking locks for file rename.
    Due to this during parallel renames some clients fail
    with EBUSY or ESTALE errors. Hence to avoid application
    discontinuity file rename must take blocking inode locks.
    
    Change-Id: I986e9d08b3be359f20b1a3e1564e049b0f3dffd3
    BUG: 1304966
    Signed-off-by: Sakshi Bansal <sabansal@redhat.com>
    Reviewed-on: http://review.gluster.org/13366
    Smoke: Gluster Build System <jenkins@build.gluster.com>
    NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
    CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
    Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
Comment 1 Vijay Bellur 2016-02-22 04:05:32 EST
REVIEW: http://review.gluster.org/13481 (dht: file rename must take blocking inode locks) posted (#1) for review on release-3.7 by Sakshi Bansal
Comment 2 Vijay Bellur 2016-02-22 04:06:42 EST
REVIEW: http://review.gluster.org/13481 (dht: file rename must take blocking inode locks) posted (#2) for review on release-3.7 by Sakshi Bansal
Comment 3 Vijay Bellur 2016-02-22 13:12:11 EST
COMMIT: http://review.gluster.org/13481 committed in release-3.7 by Raghavendra G (rgowdapp@redhat.com) 
------
commit e01a7c50a0fe4ea2a70144b4405359a4fe0a27b0
Author: Sakshi Bansal <sabansal@redhat.com>
Date:   Fri Feb 5 14:51:10 2016 +0530

    dht: file rename must take blocking inode locks
    
    Backport of http://review.gluster.org/#/c/13366
    
    Currently DHT takes non-blocking locks for file rename.
    Due to this during parallel renames some clients fail
    with EBUSY or ESTALE errors. Hence to avoid application
    discontinuity file rename must take blocking inode locks.
    
    > Change-Id: I986e9d08b3be359f20b1a3e1564e049b0f3dffd3
    > BUG: 1304966
    > Signed-off-by: Sakshi Bansal <sabansal@redhat.com>
    > Reviewed-on: http://review.gluster.org/13366
    > Smoke: Gluster Build System <jenkins@build.gluster.com>
    > NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
    > CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
    > Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
    
    Change-Id: I986e9d08b3be359f20b1a3e1564e049b0f3dffd3
    BUG: 1310544
    Signed-off-by: Sakshi Bansal <sabansal@redhat.com>
    Reviewed-on: http://review.gluster.org/13481
    Smoke: Gluster Build System <jenkins@build.gluster.com>
    NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
    CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
    Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
Comment 4 Kaushal 2016-04-19 03:23:50 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.9, please open a new bug report.

glusterfs-3.7.9 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] https://www.gluster.org/pipermail/gluster-users/2016-March/025922.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.