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

Broken layout after swapping layouts with unstriped files

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: Lustre 2.4.1, Lustre 2.7.0, Lustre 2.5.3
    • Fix Version/s: Lustre 2.7.0
    • Labels:
    • Severity:
      3
    • Rank (Obsolete):
      16639

      Description

      The following operations sequence eventually fails with EBADF (let fstripe be a striped file, fnostripeX unstriped files):

      1) swap_layouts fstripe fnostripe1
      2) I/O into fstripe
      3) swap_layouts fstripe fnostripe2
      4) I/O into fstripe # Fails with EBADF

      Please find a reproducer attached. This seems to affect current master as well as older versions of that provide layout swap.

      The file remains unavailable, also after a client umount/remount or from another client.

      It seems that lov_conf_set() doesn't call lov_layout_change() in the second case, leading to lov_io_init_empty() being called eventually on the write...

        Attachments

          Activity

            People

            • Assignee:
              bfaccini Bruno Faccini (Inactive)
              Reporter:
              hdoreau Henri Doreau (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: