[Bugs] [Bug 1244100] using fop's dict for resolving causes problems

bugzilla at redhat.com bugzilla at redhat.com
Thu Jul 23 06:46:22 UTC 2015


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



--- Comment #2 from Anand Avati <aavati at redhat.com> ---
COMMIT: http://review.gluster.org/11703 committed in release-3.7 by Raghavendra
G (rgowdapp at redhat.com) 
------
commit 960b99577bbef18add4087599faffa43f09c1dd6
Author: Raghavendra Bhat <raghavendra at redhat.com>
Date:   Tue Jul 14 16:16:00 2015 +0530

    protocol/server: use different dict for resolving

                     Backport of http://review.gluster.org/11661

    protocol/server has to resolve the inode before continuing with any fop
coming
    from the clients. For resolving it, server xlator was using the same dict
    associated with the fop. It causes problems in some situations.

    If a directory's inode was forgotten because of lru limit being exceeded,
then
    when a create fop comes for an entry within that directory, server tries to
    resolve it. But since the parent directory's inode is not found in the
inode
    table, it tries to do a hard resolve by doing a lookup on the parent gfid.

    If any xlator below server wants to get some extended attributes whenever
    lookup comes, then they set the new keys in the same dict that came along
with
    the create fop. Now, the lookup of the parent succeeds and the create fop
    proceeds with the same dict (with extra keys present). posix xlaror creates
    those xattrs that are present in the dict. Thus the xattrs which were not
to
    be present by default are also set as part of create. (Ex: bit-rot related
    xattrs such as bad-file, version and sign xattrs)

    Change-Id: I62b0b012b0af3c92df6fced61f87dd0b6b015d4c
    BUG: 1244100
    Signed-off-by: Raghavendra Bhat <raghavendra at redhat.com>
    Reviewed-on: http://review.gluster.org/11703
    Tested-by: NetBSD Build System <jenkins at build.gluster.org>
    Tested-by: Gluster Build System <jenkins at build.gluster.com>
    Reviewed-by: Raghavendra G <rgowdapp at redhat.com>

-- 
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=z2qzPuc6Ie&a=cc_unsubscribe


More information about the Bugs mailing list