[Bugs] [Bug 1226880] New: Fix infinite looping in shard_readdir(p) on '/'

bugzilla at redhat.com bugzilla at redhat.com
Mon Jun 1 11:27:08 UTC 2015


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

            Bug ID: 1226880
           Summary: Fix infinite looping in shard_readdir(p) on '/'
           Product: GlusterFS
           Version: 3.7.0
         Component: sharding
          Keywords: Triaged
          Assignee: kdhananj at redhat.com
          Reporter: kdhananj at redhat.com
        QA Contact: bugs at gluster.org
                CC: bugs at gluster.org
        Depends On: 1222379



+++ This bug was initially created as a clone of Bug #1222379 +++

Description of problem:

Readdir(p) on '/' in sharded volume can sometimes lead to infinite calls to
readdirp at same set of offsets circling back to offset=0 all over again.

RCA:
DHT performs readdirp one subvol at a time and the entries are ordered
according to their offsets in ascending order. At some point, when /.shard is
the last of the several entries read, and DHT unwinds the call to shard xlator,
it deletes the entry corresponding to "/.shard" from the list as it is not
supposed to be exposed on the mount. Shard xlator then unwinds the call with
the rest of the entries to parent xlator. When the readdirp result reaches
readdir-ahead translator, it winds the next readdir at the last entry's offset
(which is at an offset less than that of "/.shard"). In this iteration, DHT
fetches "/.shard", shard xlator ignores it and unwinds with no entries. In such
cases, readdir-ahead creates a new stub for readdirp with offset = 0. When the
call is resumed, it would again lead to the same events described above getting
executed again forever, causing the mount to perceive a hang.



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 Anand Avati on 2015-05-18 13:06:10 EDT ---

REVIEW: http://review.gluster.org/10809 (features/shard: Fix issue with
readdir(p) fop) posted (#1) for review on master by Krutika Dhananjay
(kdhananj at redhat.com)

--- Additional comment from Anand Avati on 2015-05-28 06:36:51 EDT ---

REVIEW: http://review.gluster.org/10809 (features/shard: Fix issue with
readdir(p) fop) posted (#2) for review on master by Krutika Dhananjay
(kdhananj at redhat.com)

--- Additional comment from Anand Avati on 2015-05-29 02:08:58 EDT ---

REVIEW: http://review.gluster.org/10809 (features/shard: Fix issue with
readdir(p) fop) posted (#3) for review on master by Krutika Dhananjay
(kdhananj at redhat.com)

--- Additional comment from Anand Avati on 2015-05-30 06:33:24 EDT ---

REVIEW: http://review.gluster.org/10809 (features/shard: Fix issue with
readdir(p) fop) posted (#4) for review on master by Krutika Dhananjay
(kdhananj at redhat.com)


Referenced Bugs:

https://bugzilla.redhat.com/show_bug.cgi?id=1222379
[Bug 1222379] Fix infinite looping in shard_readdir(p) on '/'
-- 
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