FA-72033 / Error-correcting codes / Member archive
RAID-5 parity rotates in the right-asymmetric direction · case 03
Rebuilt stripes return parity as data for most stripes.
Case contract
RAID-5 left-symmetric layout on n >= 3 disks: in stripe s the parity lives on disk n-1-(s mod n) and data chunk j lives on disk (parity + 1 + j) mod n. blocks lists the stripe per disk (ints; at most one None for a failed disk). A missing block is rebuilt by XOR; with no missing block the XOR of all blocks must be 0 or the result is "parity-mismatch". Return [data chunks in logical order, parity block].
Why this case matters
Array controllers rebuild degraded stripes and must map disks to logical chunks correctly.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| regression [[202, 146, 183, 239], 2, 4] | [[239, 202, 146], 183] | [[183, 239, 202], 146] | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗