January 17, 20251 yr XFS, Btrfs, and ZFS both offer checksumming (for metadata only on XFS; also for file contents on Btrfs and ZFS), but currently Unraid doesn't provide a way to actually recover from a detected checksum error. In theory, it could do better at this: when a checksum error occurs on an array drive, the affected block could be reconstructed from parity and re-written automatically. The parity-check could also do better than it does currently (to my understanding): if a parity error is detected, Unraid could decide which drive's data is incorrect by considering whether the corresponding disk block's checksum is correct on each data drive. Currently, as far as I'm aware, parity-check always trusts the data drives and rewrites parity on errors. This would require some tighter integration between the array and the filesystem, but I think the benefits would be worthwhile. If this was implemented, we'd be able to get one of the critical benefits of a ZFS pool (automatic protection against data errors) while still maintaining the flexibility of the Unraid array (easy gradual expansion, mixed drive sizes, etc).
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.