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

broken inheritance of default striping

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Trivial
    • Resolution: Not a Bug
    • Affects Version/s: Lustre 2.10.0
    • Fix Version/s: Lustre 2.11.0, Lustre 2.10.4
    • Labels:
      None
    • Severity:
      3
    • Rank (Obsolete):
      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

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

                Dates

                • Created:
                  Updated:
                  Resolved: