MD has the capability to do RAID10. This is not simply stacking one segment type upon another - it is an integrated system that allows for many RAID10-like permutations. This bug is a feature request for LVM to support the most basic variant of RAID10 - striped 2-way mirrors.
TEST REQUIREMENTS: Simply put, perform all the tests on a RAID10 LV that are performed on a RAID1 or RAID4/5/6 LV. This includes, but shouldn't be limited to: 1) Create RAID10 LV 2) Remove RAID10 LV 3) Resize RAID10 LV 4) Data consistency checking 5) Device failure testing
Adding QA ack for 6.4. Devel will need to provide unit testing results however before this bug can be ultimately verified by QA.
LVM test suite passes with the following changes made to test this new feature: - creation of RAID10 LVs [lvcreate-raid.sh] -- does not allow more than 2-way mirror -- does allow more than 2-way stripe - replacement of devices [lvconvert-raid.sh] -- replacement of any single device succeeds (while in-sync) -- replacement of more than 1 dev in a mirror group fails -- replacement of 1 dev from each mirror group will succeed - resize LV [lvresize-raid.sh] -- extend LV -- reduce LV For consistency testing, I only made a file system on the LV, mounted it, and did kernel untars and removals.
commit 4047e4dfb16175daec348bf44032c02181bd4c70 Author: Jonathan Brassow <jbrassow> Date: Fri Aug 24 15:34:19 2012 -0500 RAID: Add support for RAID10 This patch adds support for RAID10. It is not the default at this stage. The user needs to specify '--type raid10' if they would like RAID10 instead of stacked mirror over stripe.
Ran both black_bird and raid_sanity test for 3 iterations without issues. I am marking this as verified even though there are some hickups with the whole mirrored stripe leg failuire of raid10 (which effectively kills raid10, as expected but could maybe be 'more graceful'). Verified with: lvm2-2.02.98-8.el6.x86_64 lvm2-libs-2.02.98-8.el6.x86_64 lvm2-cluster-2.02.98-8.el6.x86_64 device-mapper-1.02.77-8.el6.x86_64 udev-147-2.45.el6.x86_64 kernel-2.6.32-354.el6.x86_64
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2013-0501.html