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

If setstripe for DoM file fails, less/no information is given

Details

    • Bug
    • Resolution: Not a Bug
    • Minor
    • None
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      While exploring DoM feature, found out that the error returned by setstripe on dom file
      are not useful some times. e.g. say when user try to do setstripe on dom file and
      used mdt component value more than dom_stripesize. Then this will fail with invalid
      input error. User do not have any clue on what went wrong and no hint in var log
      messages as well.

      As a work around, can we change this CDEBUG to CWARN (also for other similar error
      checks in lod_verify_striping()) so that user will atleast get the hint in logs?

              /* Check stripe size againts per-MDT limit */
              if (stripe_size > d->lod_dom_max_stripesize) {
                      CDEBUG(D_LAYOUT, "DoM component size "
                             "%u is bigger than MDT limit %u, check "
                             "dom_max_stripesize parameter\n",
                             stripe_size, d->lod_dom_max_stripesize);
                      RETURN(-EINVAL);
              }
      

      Please suggestion, if this is ok, will create patch and push.

      Attachments

        Issue Links

          Activity

            [LU-10917] If setstripe for DoM file fails, less/no information is given
            pjones Peter Jones added a comment -

            ok - thanks Rahul

            pjones Peter Jones added a comment - ok - thanks Rahul

            Thanks Andreas, we can close this issue.

            rdeshmukh_ddn Rahul Deshmukh (Inactive) added a comment - Thanks Andreas, we can close this issue.

            Most users will not be able to see console messages on the MDS, so this will not really help them.

            It would be better to print a useful error message at the client from "lfs", iff there was an error returned from the MDS. Note that doing "pre-checking" of all the parameters on the client can be problematic, since this may cause failures if the server-side limits change.

            That said, there is work underway to make the MDS more "accepting" of the -L mdt component being too large. Since it is difficult for the user to know what the dom_stripesize limit is (in the future we may want to reduce this dynamically if the MDS space is running short), and it may be different for each MDT, then it is better if the MDS adjusts the mdt component size to match its current limit, rather than returning an error. This is being worked on under LU-10808.

            adilger Andreas Dilger added a comment - Most users will not be able to see console messages on the MDS, so this will not really help them. It would be better to print a useful error message at the client from " lfs ", iff there was an error returned from the MDS. Note that doing "pre-checking" of all the parameters on the client can be problematic, since this may cause failures if the server-side limits change. That said, there is work underway to make the MDS more "accepting" of the -L mdt component being too large. Since it is difficult for the user to know what the dom_stripesize limit is (in the future we may want to reduce this dynamically if the MDS space is running short), and it may be different for each MDT, then it is better if the MDS adjusts the mdt component size to match its current limit, rather than returning an error. This is being worked on under LU-10808 .
            pjones Peter Jones added a comment -

            Mike

            Could you please advise on this one?

            Thanks

            Peter

            pjones Peter Jones added a comment - Mike Could you please advise on this one? Thanks Peter

            People

              tappro Mikhail Pershin
              rdeshmukh_ddn Rahul Deshmukh (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: