[Bugs] [Bug 1437326] Sharding: Fix a performance bug

bugzilla at redhat.com bugzilla at redhat.com
Thu Mar 30 13:56:08 UTC 2017


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



--- Comment #2 from Worker Ant <bugzilla-bot at gluster.org> ---
COMMIT: https://review.gluster.org/16966 committed in release-3.10 by
Shyamsundar Ranganathan (srangana at redhat.com) 
------
commit 061b83ec4101e3ecc188038141212cde75656977
Author: Krutika Dhananjay <kdhananj at redhat.com>
Date:   Tue Mar 28 19:26:41 2017 +0530

    features/shard: Pass the correct iatt for cache invalidation

    Backport of:
    > Change-Id: Ib0349291d2d01f3782d6d0bdd90c6db5e0609210
    > BUG: 1436739
    > Reviewed on: https://review.gluster.org/16961
    > (cherry picked from commit 5369fe2d545e0a0d31ab9c9d2797744c130af259)

    This fixes a performance issue with shard which was causing
    the translator to trigger unusually high number of lookups
    for cache invalidation even when there was no modification to
    the file.

    In shard_common_stat_cbk(), it is local->prebuf that contains the
    aggregated size and block count as opposed to buf which only holds the
    attributes for the physical copy of base shard. Passing buf for
    inode_ctx invalidation would always set refresh to true since the file
    size in inode ctx contains the aggregated size and would never be same
    as @buf->ia_size. This was leading to every write/read being preceded
    by a lookup on the base shard even when the file underwent no
    modification.

    Change-Id: Ib0349291d2d01f3782d6d0bdd90c6db5e0609210
    BUG: 1437326
    Signed-off-by: Krutika Dhananjay <kdhananj at redhat.com>
    Reviewed-on: https://review.gluster.org/16966
    Smoke: Gluster Build System <jenkins at build.gluster.org>
    Reviewed-by: Pranith Kumar Karampuri <pkarampu at redhat.com>
    NetBSD-regression: NetBSD Build System <jenkins at build.gluster.org>
    CentOS-regression: Gluster Build System <jenkins at build.gluster.org>

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


More information about the Bugs mailing list