|
This corruption appeared in production after applying manually some layout corrections for CEA-5/LU-13535/LU-14837. This resulted to have different stripes versions (PFL and plain) for a file.
Here a reproducer:
- create a file with plain layout:
- take a LVM snapshot of the MDT
- migrate the file to PFL layout
- mount the snapshot
- run LFSCK to regenerate old plain stripes
- mount the real target
- run lfsck to regenerate the PFL stripes
- run lfsck in orphan mode -> file layout is corrupted (layout is modified to plain), OST stripe are not removed
- re-run lfsck in orphan mode -> file layout is corrupted, some PFL stripes are associated to the file plain layout.
Here the details:
- create a file with plain layout:
- take a LVM snapshot of the MDT:
- migrate the file to PFL layout
- mount the snapshot
- run LFSCK to regenerate old plain stripes
- mount the real target
- run lfsck to regenerate the PFL stripes
- run lfsck in orphan mode -> file layout is corrupted (layout is modified to plain),
- re-run lfsck in orphan mode -> file layout is corrupted, some PFL stripes are associated to the file plain layout.
|