Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-7585 Implement OI Scrub for ZFS
  3. LU-10193

Index object on-disk layout compatibility

    XMLWordPrintable

Details

    • Technical task
    • Resolution: Fixed
    • Minor
    • Lustre 2.11.0
    • None
    • None
    • 9223372036854775807

    Description

      Lustre uses ZAP to implement index object for ZFS backend. When tar the index object via backend ZPL for backup, it is explained as regular file, then when untar it, it is not ZAP formatted again, then the Lustre cannot recognize the 'bad' formatted index object.

      On the other hand, each backend FS has its own special format for index object. Then we cannot migrate the index files from one backend to another directly.

      To resolve such issue, the patch will backup the index object with plain format to the local '/index_backup' directory with the name of soruce index's FID string and ".lbx" postfix when
      umount the device.

      The format of the backup is as following:
      1) header: 512 bytes, including:
      magic: 4 bytes
      count: 4 bytes
      keysize: 4 bytes
      recsize: 4 bytes
      owner_fid: 16 bytes
      padding: 480 bytes

      2) body: after the header, <key, rec> pairs one by one.

      The backup behavior is controlled via new OSD lproc interface: index_backup. By default, it is off. You can turn it on to enable backup when server umount via writing non-zero value to such lproc interface.

      Attachments

        Issue Links

          Activity

            People

              yong.fan nasf (Inactive)
              yong.fan nasf (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: