Details

    • Technical task
    • Resolution: Fixed
    • Major
    • Lustre 2.6.0
    • None
    • None
    • 8893

    Description

      This is a sub-task for striped directory in DNE phase II.

      1. add setstripedir and getstripeddir to lfs.
      2. add related changes to client side, llite ioctl, allocate fid for stripe, packed RPC etc.
      3. The related process needs to change as well

      created/looked up under stripe directory,

      Client will first calculate the hash according to the name and lmv_hash_type of the striped directory, then get the MDT index according to the hash, and sends the create/lookup request to that MDT.

      Readdir of striped directory
      During readdir, client will iterate all of stripes, and for each stripe, it will get stripe lock, then read directory entries.

      Getattr of striped directory

      Client needs to walk through all of the stripes to get attributes from all of the stripe and then merge them together.
      size/blocks/nlink: add all together from every stripe.
      ctime/mtime/atime: choose the newest one as the xtime of the striped directory.
      uid/gid: should be same for all stripes.

      4. On the MDT side, in mdt_md_create, the master MDT sends object create updates to each remote MDT to create the stripes.

      Attachments

        Issue Links

          Activity

            People

              di.wang Di Wang
              di.wang Di Wang
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: