diff options
author | LOLi <[email protected]> | 2017-12-28 19:15:32 +0100 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2017-12-28 10:15:32 -0800 |
commit | 390d679acdfa6a2498280a4dcd33b7600ace27ce (patch) | |
tree | d0b071bb8a24fa237b36ac8c8d7cfae578d5366f /tests/runfiles | |
parent | 2fe61a7ecc507d031451c21b3077fae549b58ec3 (diff) |
Fix 'zpool add' handling of nested interior VDEVs
When replacing a faulted device which was previously handled by a spare
multiple levels of nested interior VDEVs will be present in the pool
configuration; the following example illustrates one of the possible
situations:
NAME STATE READ WRITE CKSUM
testpool DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
spare-0 DEGRADED 0 0 0
replacing-0 DEGRADED 0 0 0
/var/tmp/fault-dev UNAVAIL 0 0 0 cannot open
/var/tmp/replace-dev ONLINE 0 0 0
/var/tmp/spare-dev1 ONLINE 0 0 0
/var/tmp/safe-dev ONLINE 0 0 0
spares
/var/tmp/spare-dev1 INUSE currently in use
This is safe and allowed, but get_replication() needs to handle this
situation gracefully to let zpool add new devices to the pool.
Reviewed-by: George Melikov <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: loli10K <[email protected]>
Closes #6678
Closes #6996
Diffstat (limited to 'tests/runfiles')
-rw-r--r-- | tests/runfiles/linux.run | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tests/runfiles/linux.run b/tests/runfiles/linux.run index ad35e92be..0cecdd673 100644 --- a/tests/runfiles/linux.run +++ b/tests/runfiles/linux.run @@ -257,7 +257,7 @@ tests = ['zpool_add_001_pos', 'zpool_add_002_pos', 'zpool_add_003_pos', 'zpool_add_004_pos', 'zpool_add_005_pos', 'zpool_add_006_pos', 'zpool_add_007_neg', 'zpool_add_008_neg', 'zpool_add_009_neg', 'zpool_add_010_pos', - 'add-o_ashift', 'add_prop_ashift'] + 'add-o_ashift', 'add_prop_ashift', 'add_nested_replacing_spare'] tags = ['functional', 'cli_root', 'zpool_add'] [tests/functional/cli_root/zpool_attach] |