-
Technical task
-
Resolution: Unresolved
-
Medium
-
None
-
None
-
None
-
3
-
9223372036854775807
The currently excepted sanity-ec test_53a ("test EC recovery with non-zero read offsets") writes 12 MiB to a 3+1 file with six 1 MiB data stripes (two raid sets), takes one safe data OST out with a persistent OBD_FAIL_OST_BRW_READ_BULK fault, and reads from offsets 1M, 3M, 5M, 6M, 7M and 10M to the end of the file, comparing each read with a reference taken before the fault. The recovery read intermittently returns a checksum which differs from the reference: measured at 2 failures in 10 runs on the 62757 patch, and still 1 in 10 with the proactive dead-OST detection that fixed the other offset tests, so it is not the LU-12668 reconstruction bug those tests hit.
The failing offsets are not fixed across runs, which points at the recovery read for a range that starts inside a raid set (crw_pos != 0, with lov_io_set_range rounding the inner range down to the raid-set start) rather than at the reconstruction itself. The test stays excepted in sanity-ec.sh until the cause is found; this ticket tracks it separately from LU-12668.
Expected: reads at any offset of a degraded EC file return the same bytes as the healthy file.