On Thu, Jan 09, 2014 at 06:34:23PM +0100, George Eleftheriou wrote: > > claiming that RAID-10 (with 2-way mirroring) is guaranteed to survive > > an arbitrary 2-device failure is incorrect. > > Yes, you are right. I didn't mean "any 2 devices". I should have > added "from different mirrors" :)
If you have an even number of devices and all the devices are the same size, then: * the block group allocator will use all the devices each time * the amount of space on each device will always be the same If the sort in the allocator is stable and resolves ties in free space by using the device ID number, the above properties should guarantee that the allocation is stable, so each new block group will have the same functional chunk on the same device, and you get your wish. It's been a few months since I looked at that code, but I don't recall seeing anything directly contradictory to the above assumptions. Of course, if you have an odd number of devices, the allocator will omit a different device on each block group, and you lose the ability to survive (some) two-device failures. I suspect that the odds of surviving a two-device failure are still non-zero, but less than if you had an even number of devices. I'm not about to attempt an ab-initio computation of the probabilities, but it shouldn't be too hard to do either a monte-carlo simulation or a simple brute-force enumeration of the possibilities for a given configuration. Hugo. -- === Hugo Mills: hugo@... carfax.org.uk | darksatanic.net | lug.org.uk === PGP key: 65E74AC0 from wwwkeys.eu.pgp.net or http://www.carfax.org.uk --- <Diablo-D3> My code is never released, it escapes from the --- git repo and kills a few beta testers on the way out
signature.asc
Description: Digital signature