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

Broken layout after swapping layouts with unstriped files

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Lustre 2.7.0
    • Lustre 2.4.1, Lustre 2.7.0, Lustre 2.5.3
    • 3
    • 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

          [LU-5957] Broken layout after swapping layouts with unstriped files
          riauxjb Jean-Baptiste Riaux (Inactive) made changes -
          Labels Original: patch New: cea patch
          hdoreau Henri Doreau (Inactive) added a comment - Here is a 2.5 backport: http://review.whamcloud.com/14255

          Henri Doreau (henri.doreau@cea.fr) uploaded a new patch: http://review.whamcloud.com/14255
          Subject: LU-5957 mdt: Update MDT flags after layout swap
          Project: fs/lustre-release
          Branch: b2_5
          Current Patch Set: 1
          Commit: 6032c1e646942169d73ea3763c0399c5d663e498

          gerrit Gerrit Updater added a comment - Henri Doreau (henri.doreau@cea.fr) uploaded a new patch: http://review.whamcloud.com/14255 Subject: LU-5957 mdt: Update MDT flags after layout swap Project: fs/lustre-release Branch: b2_5 Current Patch Set: 1 Commit: 6032c1e646942169d73ea3763c0399c5d663e498

          Could this be considered for 2.5?

          hdoreau Henri Doreau (Inactive) added a comment - Could this be considered for 2.5?
          pjones Peter Jones made changes -
          Fix Version/s New: Lustre 2.7.0 [ 10631 ]
          Resolution New: Fixed [ 1 ]
          Status Original: Open [ 1 ] New: Resolved [ 5 ]
          pjones Peter Jones added a comment -

          Landed for 2.7

          pjones Peter Jones added a comment - Landed for 2.7

          Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/12877/
          Subject: LU-5957 mdt: Update MDT flags after layout swap
          Project: fs/lustre-release
          Branch: master
          Current Patch Set:
          Commit: 1d3ee3ed2b56d73f392e1b2a033f7d274f5202d9

          gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/12877/ Subject: LU-5957 mdt: Update MDT flags after layout swap Project: fs/lustre-release Branch: master Current Patch Set: Commit: 1d3ee3ed2b56d73f392e1b2a033f7d274f5202d9
          cliffw Cliff White (Inactive) made changes -
          Assignee Original: WC Triage [ wc-triage ] New: Bruno Faccini [ bfaccini ]

          Bruno, as you might see in the patch above it's an mdt issue: an I/O on a non-striped file invokes mdt_create_data, which creates the LOV and set MOF_LOV_CREATED on the object. If you "destripe" this object again an re-do an I/O this flag will prevent the LOV from being re-created as expected.

          hdoreau Henri Doreau (Inactive) added a comment - Bruno, as you might see in the patch above it's an mdt issue: an I/O on a non-striped file invokes mdt_create_data, which creates the LOV and set MOF_LOV_CREATED on the object. If you "destripe" this object again an re-do an I/O this flag will prevent the LOV from being re-created as expected.
          pjones Peter Jones made changes -
          Labels New: patch

          People

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

            Dates

              Created:
              Updated:
              Resolved: