Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-10911 FLR2: Read only erasure coding
  3. LU-19545

FLR-EC: Tight binding between erasure code and parity mirrors

XMLWordPrintable

    • 3
    • 9223372036854775807

      Parity/EC mirrors need to be tightly coupled to the specific data mirror they were created to match; otherwise, they cannot provide proper redundancy due to mismatches in stripe_size, stripe_count, component extent, or possibly overlapping OST selection. If they are not linked, the stripe allocation will not correspond correctly between data and parity components and may result in data loss if an OST object is unavailable and EC data recovery is needed.

      To accomplish this, we must store the mirror ID of the data mirror in each of the corresponding parity components.

      We need 16 bits to represent the mirror ID. To accommodate this, we’ve selected the LLC timestamp field, which is currently a 64-bit field that is set and printed but not actually used for functional purposes. We can repurpose the upper 16 bits of this field to store the mirror ID of the data mirror associated with each parity mirror.

            mvef Marc Vef
            paf0186 Patrick Farrell
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: