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

lod_attr_set() skips attr_set on osp objects incorrectly

Details

    • Bug
    • Resolution: Fixed
    • Critical
    • Lustre 2.6.0
    • Lustre 2.6.0
    • 3
    • 14780

    Description

      This is a regression introduced by fix of LU-4690 "lod: separate master object with master stripe" (http://review.whamcloud.com/9511 commit 60e07b972114df24105a3a1bfa7365892f72a4a7).

      In lod_attr_set():

              for (i = 0; i < lo->ldo_stripenr; i++) {
                      LASSERT(lo->ldo_stripe[i]);
      +               if (dt_object_exists(lo->ldo_stripe[i]) == 0)
      +                       continue;
                      rc = dt_attr_set(env, lo->ldo_stripe[i], attr, handle, capa);
                      if (rc) {
                              CERROR("failed declaration: %d\n", rc);
      

      Since dt_object_exists() always return false for the osp object (for OST object), any attr_set to osp object will be skipped mistakenly, and chown/chgrp won't set UID/GID to OST objects at the end.

      As per Di's suggestion, we'd add additional IS_DIR checking here.

      Attachments

        Issue Links

          Activity

            [LU-5296] lod_attr_set() skips attr_set on osp objects incorrectly

            What is the impact of this bug? Does it mean that quota will be incorrect during normal usage? Is it causing test failures?

            adilger Andreas Dilger added a comment - What is the impact of this bug? Does it mean that quota will be incorrect during normal usage? Is it causing test failures?
            adilger Andreas Dilger added a comment - How does this relate to LU-5006 "chown/chgrp doesn't work for files created by lfs setstripe" ?

            then it's probably better remove this check from LOD ?

            I think DNE relies on that check for dir object. Di, any comment on this? Thanks.

            niu Niu Yawei (Inactive) added a comment - then it's probably better remove this check from LOD ? I think DNE relies on that check for dir object. Di, any comment on this? Thanks.

            then it's probably better remove this check from LOD ?

            bzzz Alex Zhuravlev added a comment - then it's probably better remove this check from LOD ?

            Actually, current osp thread can't handle exceptions gracefully, I opened another ticket to track the problem there. See LU-5297.

            niu Niu Yawei (Inactive) added a comment - Actually, current osp thread can't handle exceptions gracefully, I opened another ticket to track the problem there. See LU-5297 .
            niu Niu Yawei (Inactive) added a comment - http://review.whamcloud.com/10989

            People

              niu Niu Yawei (Inactive)
              niu Niu Yawei (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: