[Bugs] [Bug 1387878] Rebalance after add bricks corrupts files

bugzilla at redhat.com bugzilla at redhat.com
Fri Mar 10 22:47:09 UTC 2017


https://bugzilla.redhat.com/show_bug.cgi?id=1387878



--- Comment #13 from Worker Ant <bugzilla-bot at gluster.org> ---
COMMIT: https://review.gluster.org/16750 committed in release-3.8 by Niels de
Vos (ndevos at redhat.com) 
------
commit 8462ab0fed6ff2f875909ba8fda146b72d535c2a
Author: Krutika Dhananjay <kdhananj at redhat.com>
Date:   Tue May 17 15:37:18 2016 +0530

    features/shard: Fix EIO error on add-brick

            Backport of: https://review.gluster.org/14419

    DHT seems to link inode during lookup even before initializing
    inode ctx with layout information, which comes after
    directory healing.

    Consider two parallel writes. As part of the first write,
    shard sends lookup on .shard which in its return path would
    cause DHT to link .shard inode. Now at this point, when a
    second write is wound, inode_find() of .shard succeeds and
    as a result of this, shard goes to create the participant
    shards by issuing MKNODs under .shard. Since the layout is
    yet to be initialized, mknod fails in dht call path with EIO,
    leading to VM pauses.

    The fix involves shard maintaining a flag to denote whether
    a fresh lookup on .shard completed one network trip. If it
    didn't, all inode_find()s in fop path will be followed by a
    lookup before proceeding with the next stage of the fop.

    Big thanks to Raghavendra G and Pranith Kumar K for the RCA
    and subsequent inputs and feedback on the patch.

    Change-Id: I66a7adf177e338a7691f441f199dde7c2b90c292
    BUG: 1387878
    Signed-off-by: Krutika Dhananjay <kdhananj at redhat.com>
    Reviewed-on: https://review.gluster.org/16750
    Smoke: Gluster Build System <jenkins at build.gluster.org>
    NetBSD-regression: NetBSD Build System <jenkins at build.gluster.org>
    Reviewed-by: Pranith Kumar Karampuri <pkarampu at redhat.com>
    CentOS-regression: Gluster Build System <jenkins at build.gluster.org>
    Reviewed-by: Niels de Vos <ndevos at redhat.com>

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.


More information about the Bugs mailing list