Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1338501

Summary: implement meta-lock/unlock for lock migration
Product: [Community] GlusterFS Reporter: Susant Kumar Palai <spalai>
Component: locksAssignee: Susant Kumar Palai <spalai>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 3.8.0CC: bugs, jthottan, ndevos, pkarampu
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-3.8.0 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1331720 Environment:
Last Closed: 2016-06-16 12:32:10 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: 1331720    
Bug Blocks: 1317278    

Description Susant Kumar Palai 2016-05-22 06:54:21 UTC
+++ This bug was initially created as a clone of Bug #1331720 +++

Description of problem:
This bz is created to track the meta lock/unlock implementation. This is needed
to synchronize lock-migration with incoming lock requests.


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-05-09 01:15:16 MVT ---

REVIEW: http://review.gluster.org/14251 (posix/lock: implement meta-lock/unlock functionality) posted (#1) for review on master by Susant Palai (spalai)

--- Additional comment from Vijay Bellur on 2016-05-09 01:15:19 MVT ---

REVIEW: http://review.gluster.org/14252 (dht/metalock: add metalock/unlock) posted (#1) for review on master by Susant Palai (spalai)

--- Additional comment from Vijay Bellur on 2016-05-09 14:36:54 MVT ---

REVIEW: http://review.gluster.org/14252 (dht/metalock: add metalock/unlock) posted (#2) for review on master by Susant Palai (spalai)

--- Additional comment from Vijay Bellur on 2016-05-09 14:36:57 MVT ---

REVIEW: http://review.gluster.org/14251 (posix/lock: implement meta-lock/unlock functionality) posted (#2) for review on master by Susant Palai (spalai)

Comment 1 Vijay Bellur 2016-05-22 06:59:17 UTC
REVIEW: http://review.gluster.org/14462 (posix/lock: implement meta-lock/unlock functionality) posted (#1) for review on release-3.8 by Susant Palai (spalai)

Comment 2 Vijay Bellur 2016-06-03 07:00:21 UTC
REVIEW: http://review.gluster.org/14462 (posix/lock: implement meta-lock/unlock functionality) posted (#2) for review on release-3.8 by Susant Palai (spalai)

Comment 3 Vijay Bellur 2016-06-03 07:00:25 UTC
REVIEW: http://review.gluster.org/14631 (dht : add metalock/unlock) posted (#1) for review on release-3.8 by Susant Palai (spalai)

Comment 4 Vijay Bellur 2016-06-06 06:33:57 UTC
COMMIT: http://review.gluster.org/14462 committed in release-3.8 by Raghavendra G (rgowdapp) 
------
commit 3682513827f0f61fac51fd49d69b1807401a9b77
Author: Susant Palai <spalai>
Date:   Fri Apr 22 15:20:39 2016 +0530

    posix/lock: implement meta-lock/unlock functionality
    
    problem : The lock state needs to be protected when rebalance is reading the
    lock state on the source. Otherwise there will be locks left unmigrated.
    Hence, to synchronize incoming lock requests with lock-migration, meta lock
    is needed. Any new lock request will be queued if there is an active meta-lock
    and with sucessful lock migration, will be unwound with EREMOTE, so that
    dht module can wind the request to the correct destination.
    
    On a successful lock migration, "pl_inode->migrated" flag is enabled. Hence,
    any further request would be unwound with EREMOTE and will be redirected to
    new destination.
    
    More details can be found here:
    https://github.com/gluster/glusterfs-specs/blob/master/accepted/Lock-Migration.md
    
    design discussion:
    https://www.gluster.org/pipermail/gluster-devel/2016-January/048088.html
    
    Change-Id: Ief033d5652b5ca4ba6f499110a521cae283d6aba
    BUG: 1338501
    Signed-off-by: Susant Palai <spalai>
    Reviewed-on: http://review.gluster.org/14462
    Tested-by: Kotresh HR <khiremat>
    Smoke: Gluster Build System <jenkins.com>
    NetBSD-regression: NetBSD Build System <jenkins.org>
    Reviewed-by: Raghavendra G <rgowdapp>
    CentOS-regression: Gluster Build System <jenkins.com>

Comment 5 Vijay Bellur 2016-06-06 06:34:02 UTC
COMMIT: http://review.gluster.org/14631 committed in release-3.8 by Raghavendra G (rgowdapp) 
------
commit e61e93382267fddb8854c14535b169be38849eb7
Author: Susant Palai <spalai>
Date:   Mon May 9 01:12:17 2016 +0530

    dht : add metalock/unlock
    
    Change-Id: I842a7ea1b286f1b893b200fe647597e7fd0f2105
    BUG: 1338501
    Signed-off-by: Susant Palai <spalai>
    Reviewed-on: http://review.gluster.org/14631
    Tested-by: Kotresh HR <khiremat>
    Smoke: Gluster Build System <jenkins.com>
    NetBSD-regression: NetBSD Build System <jenkins.org>
    Reviewed-by: Raghavendra G <rgowdapp>
    CentOS-regression: Gluster Build System <jenkins.com>

Comment 6 Niels de Vos 2016-06-16 12:32:10 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.8.0, please open a new bug report.

glusterfs-3.8.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://blog.gluster.org/2016/06/glusterfs-3-8-released/
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user