Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-8653

broken inheritance of default striping

    XMLWordPrintable

Details

    • Bug
    • Resolution: Not a Bug
    • Trivial
    • Lustre 2.11.0, Lustre 2.10.4
    • Lustre 2.10.0
    • None
    • 3
    • 9223372036854775807

    Description

      I think we have a problem with inheritance in the following patch
      http://review.whamcloud.com/#/c/19041/23/lustre/lod/lod_object.c,unified
      from LU-7660

      The problem code is below:

      3117	+»       /* if parent doesn't provide all defaults, striping from fs default */
      3118	+»       if (d->lod_md_root != NULL &&
      3119	+»           (lc->ldo_stripenr == 0 ||
      3120	+»            lc->ldo_stripe_size == 0 ||
      3121	+»            lc->ldo_stripe_offset == LOV_OFFSET_DEFAULT ||
      3122	+»            lc->ldo_pool == NULL)) {
      3123	+»       »       memset(lds, 0, sizeof(*lds));
      3124	+»       »       lod_get_default_lov_striping(env, d->lod_md_root, lds);
      3125	+»       »       lod_striping_from_default(lc, lds, child_mode);
      3126	+»       }
      

      while it is correct about stripe number, count and offset checks, it is not correct about pool check. Since pool is optional value, it is not right to ignore parent layout just because it has no pool.

      For example, I set some striping on the directory and expect all files/subdirs inside to have the same striping, but in fact that will not work, striping will be taken from fs root. Moreover, default fs striping may have no pool as well but still be used prior the parent striping.

      I've encountered such problem while porting DoM patches, because it is quite visible when DOM layout is used or not as expected

      Attachments

        Issue Links

          Activity

            People

              wc-triage WC Triage
              tappro Mikhail Pershin
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: