IIRC, ZoL made a change to allow mixing mirror and raidz (without a force
flag), as long as they have the same redundancy level.  I'd recommend we
bring that change to illumos as well.  This looks like the commit:

commit 6eb6073a044653016013b1a72de03a1257e899c5
Author: HÃ¥kan Johansson <[email protected]>
Date:   Mon Jun 5 22:53:09 2017 +0200

    Allow add of raidz and mirror with same redundancy

    Allow new members to be added to a pool mixing raidz and mirror vdevs
    without giving -f, as long as they have matching redundancy.  This case
    was missed in #5915, which only handled zpool create.

    Add zfstest zpool_add_010_pos.ksh, with test of zpool create
    followed by zpool add of mixed raidz and mirror vdevs.

    Add some more mixed raidz and mirror cases to zpool_create_006_pos.ksh.

    Reviewed-by: Brian Behlendorf <[email protected]>
    Signed-off-by: Haakan Johansson <[email protected]>
    Issue #5915
    Closes #6181

--matt

On Sun, Jan 6, 2019 at 12:07 AM Igor Kozhukhov <[email protected]> wrote:

> Hi All,
>
> i try to merge ZoL tests to DilOS and i can see interest differenses.
>
> based on zpool_create_006_pos.ksh:
> in valid section i can see mix of mirror + raidz:
>
> full version:
> set -A valid_args \
>         "mirror $vdev0 $vdev1 $vdev2 mirror $vdev3 $vdev4 $vdev5" \
>         "mirror $vdev0 $vdev1 mirror $vdev2 $vdev3 mirror $vdev4 $vdev5" \
>         "mirror $vdev0 $vdev1 $vdev2 mirror $vdev3 $vdev4 $vdev5 \
>                 spare $vdev6" \
>         "mirror $vdev0 $vdev1 mirror $vdev2 $vdev3 mirror $vdev4 $vdev5 \
>                 spare $vdev6 $vdev7" \
>         "mirror $vdev0 $vdev1 spare $vdev2 mirror $vdev3 $vdev4" \
>         "mirror $vdev0 $vdev1 raidz $vdev2 $vdev3" \
>         "mirror $vdev0 $vdev1 raidz $vdev2 $vdev3 $vdev4" \
>         "mirror $vdev0 $vdev1 $vdev2 raidz2 $vdev3 $vdev4 $vdev5" \
>         "mirror $vdev0 $vdev1 $vdev2 $vdev3 \
>                 raidz3 $vdev4 $vdev5 $vdev6 $vdev7" \
>         "raidz $vdev0 $vdev1 $vdev2 mirror $vdev3 $vdev4" \
>         "raidz $vdev0 $vdev1 $vdev2 raidz1 $vdev3 $vdev4 $vdev5" \
>         "raidz $vdev0 $vdev1 raidz1 $vdev2 $vdev3 raidz $vdev4 $vdev5" \
>         "raidz $vdev0 $vdev1 $vdev2 raidz1 $vdev3 $vdev4 $vdev5 \
>                 spare $vdev6" \
>         "raidz $vdev0 $vdev1 raidz1 $vdev2 $vdev3 raidz $vdev4 $vdev5 \
>                 spare $vdev6 $vdev7" \
>         "raidz $vdev0 $vdev1 spare $vdev2 raidz $vdev3 $vdev4" \
>         "raidz2 $vdev0 $vdev1 $vdev2 mirror $vdev3 $vdev4 $vdev5" \
>         "raidz2 $vdev0 $vdev1 $vdev2 raidz2 $vdev3 $vdev4 $vdev5" \
>         "raidz2 $vdev0 $vdev1 $vdev2 raidz2 $vdev3 $vdev4 $vdev5 \
>                 raidz2 $vdev6 $vdev7 $vdev8" \
>         "raidz2 $vdev0 $vdev1 $vdev2 raidz2 $vdev3 $vdev4 $vdev5 \
>                 spare $vdev6" \
>         "raidz2 $vdev0 $vdev1 $vdev2 raidz2 $vdev3 $vdev4 $vdev5 \
>                 raidz2 $vdev6 $vdev7 $vdev8 spare $vdev9" \
>         "raidz2 $vdev0 $vdev1 $vdev2 spare $vdev3 raidz2 $vdev4 $vdev5
> $vdev6" \
>         "raidz3 $vdev0 $vdev1 $vdev2 $vdev3 \
>                 mirror $vdev4 $vdev5 $vdev6 $vdev7" \
>         "spare $vdev0 $vdev1 $vdev2 mirror $vdev3 $vdev4 raidz $vdev5
> $vdev6"
>
> part of:
>         "mirror $vdev0 $vdev1 raidz $vdev2 $vdev3" \
>         "mirror $vdev0 $vdev1 raidz $vdev2 $vdev3 $vdev4" \
>         "mirror $vdev0 $vdev1 $vdev2 raidz2 $vdev3 $vdev4 $vdev5" \
>         "mirror $vdev0 $vdev1 $vdev2 $vdev3 \
>                 raidz3 $vdev4 $vdev5 $vdev6 $vdev7" \
>
> but on dilos(illumos based) they are tries are failed.
>
> question is: is it ZoL discussed specific and should be ported to illumos
> based platforms or it is valid usecase and illumos missed it ?
>
> best regards,
> -Igor
>
>
> ------------------------------------------
> openzfs: openzfs-developer
> Permalink:
> https://openzfs.topicbox.com/groups/developer/Ta6cc976f1a8c8b29-M373f4e8e11e5803bd7277eb4
> Delivery options:
> https://openzfs.topicbox.com/groups/developer/subscription
>

------------------------------------------
openzfs: openzfs-developer
Permalink: 
https://openzfs.topicbox.com/groups/developer/Ta6cc976f1a8c8b29-M4b54276d9dde9f880084dc4e
Delivery options: https://openzfs.topicbox.com/groups/developer/subscription

Reply via email to