An md/raid6 data corruption bug
An md/raid6 data corruption bug
Posted Aug 23, 2014 11:40 UTC (Sat) by Wol (subscriber, #4433)In reply to: An md/raid6 data corruption bug by Tomasu
Parent article: An md/raid6 data corruption bug
A mirror dedicates 50% of your capacity to recovery. If you get a read failure (ie the disk doesn't respond) you can recover. If you get a read error (ie the wrong data is returned), the raid will detect it but your app won't know which version is correct.
Change that to raid 5, and now you have dedicated 33% of your capacity to detection and recovery. Any single read error will be detected, and any single read failure will be recoved with. And that's why you should run raid 5 over raid 1, and not the other way round, because a read failure in the mirror will be handled by the raid 5, but it doesn't work the other way round. But it sounds like you're effectively running raid 1 over raid 5 :-(
Going to raid 6 now strengthens both the detection and recovery of raid 5. But given this article, it sounds like adding further parity disks to raid 6 might not be a bad idea :-)
Cheers,
Wol
