diff options
author | Brian Behlendorf <[email protected]> | 2018-10-01 17:15:57 -0700 |
---|---|---|
committer | GitHub <[email protected]> | 2018-10-01 17:15:57 -0700 |
commit | 838bd5ff35db04695ba4eadc7fdb2d56ff816ee5 (patch) | |
tree | 5a19ae6ebd4021df27e543cbdc0ab5f30962f9b8 /tests/zfs-tests | |
parent | 424fd7c3e080255935646d2beaa2655c116cc37a (diff) |
ZTS: Fix snapshot_009_pos, snapshot_010_pos
Mitigate the likelihood of the newly created volumes being busy
when the 'zfs destroy -r' is issued by waiting for udev to settle.
Since this is not a iron clad fix I've added the test case to
the known list of possible failures and referenced issue #7961.
Finally, in the case this test does fail fix the cleanup logic
so subsequent tests won't incorrectly fail.
Reviewed-by: Giuseppe Di Natale <[email protected]>
Reviewed-by: George Melikov <[email protected]>
Reviewed-by: John Kennedy <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Closes #7961
Closes #7962
Diffstat (limited to 'tests/zfs-tests')
-rw-r--r-- | tests/zfs-tests/include/libtest.shlib | 2 | ||||
-rwxr-xr-x | tests/zfs-tests/tests/functional/snapshot/snapshot_009_pos.ksh | 8 | ||||
-rwxr-xr-x | tests/zfs-tests/tests/functional/snapshot/snapshot_010_pos.ksh | 7 |
3 files changed, 7 insertions, 10 deletions
diff --git a/tests/zfs-tests/include/libtest.shlib b/tests/zfs-tests/include/libtest.shlib index e5a3d63a4..608f4f29b 100644 --- a/tests/zfs-tests/include/libtest.shlib +++ b/tests/zfs-tests/include/libtest.shlib @@ -642,7 +642,7 @@ function destroy_snapshot typeset snap=${1:-$TESTPOOL/$TESTFS@$TESTSNAP} if ! snapexists $snap; then - log_fail "'$snap' does not existed." + log_fail "'$snap' does not exist." fi # diff --git a/tests/zfs-tests/tests/functional/snapshot/snapshot_009_pos.ksh b/tests/zfs-tests/tests/functional/snapshot/snapshot_009_pos.ksh index 926669124..6607d4ca4 100755 --- a/tests/zfs-tests/tests/functional/snapshot/snapshot_009_pos.ksh +++ b/tests/zfs-tests/tests/functional/snapshot/snapshot_009_pos.ksh @@ -52,18 +52,15 @@ function cleanup typeset snap for ds in $ctr/$TESTVOL1 $ctr/$TESTCLONE; do - datasetexists $ds && \ - log_must zfs destroy -f $ds + destroy_dataset $ds "-rf" done for snap in $ctr/$TESTFS1@$TESTSNAP1 \ $snappool $snapvol $snapctr $snapctrvol \ $snapctrclone $snapctrfs do - snapexists $snap && \ - log_must zfs destroy -rf $snap + snapexists $snap && destroy_dataset $snap "-rf" done - } log_assert "Verify snapshot -r can correctly create a snapshot tree." @@ -91,6 +88,7 @@ else fi log_must zfs snapshot -r $snappool +log_must block_device_wait #verify the snapshot -r results for snap in $snappool $snapfs $snapvol $snapctr $snapctrvol \ diff --git a/tests/zfs-tests/tests/functional/snapshot/snapshot_010_pos.ksh b/tests/zfs-tests/tests/functional/snapshot/snapshot_010_pos.ksh index e0849493d..0f876ad6d 100755 --- a/tests/zfs-tests/tests/functional/snapshot/snapshot_010_pos.ksh +++ b/tests/zfs-tests/tests/functional/snapshot/snapshot_010_pos.ksh @@ -49,15 +49,13 @@ function cleanup { typeset snap - datasetexists $ctrvol && \ - log_must zfs destroy -f $ctrvol + destroy_dataset $ctrvol "-rf" for snap in $ctrfs@$TESTSNAP1 \ $snappool $snapvol $snapctr $snapctrvol \ $snapctrclone $snapctrfs do - snapexists $snap && \ - log_must zfs destroy -rf $snap + snapexists $snap && destroy_dataset $snap "-rf" done } @@ -85,6 +83,7 @@ else fi log_must zfs snapshot -r $snappool +log_must block_device_wait #select the $TESTCTR as destroy point, $TESTCTR is a child of $TESTPOOL log_must zfs destroy -r $snapctr |