aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2018-10-01 17:15:57 -0700
committerGitHub <[email protected]>2018-10-01 17:15:57 -0700
commit838bd5ff35db04695ba4eadc7fdb2d56ff816ee5 (patch)
tree5a19ae6ebd4021df27e543cbdc0ab5f30962f9b8 /tests
parent424fd7c3e080255935646d2beaa2655c116cc37a (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')
-rwxr-xr-xtests/test-runner/bin/zts-report.py2
-rw-r--r--tests/zfs-tests/include/libtest.shlib2
-rwxr-xr-xtests/zfs-tests/tests/functional/snapshot/snapshot_009_pos.ksh8
-rwxr-xr-xtests/zfs-tests/tests/functional/snapshot/snapshot_010_pos.ksh7
4 files changed, 9 insertions, 10 deletions
diff --git a/tests/test-runner/bin/zts-report.py b/tests/test-runner/bin/zts-report.py
index 2cf2eb941..d4e743a17 100755
--- a/tests/test-runner/bin/zts-report.py
+++ b/tests/test-runner/bin/zts-report.py
@@ -264,6 +264,8 @@ maybe = {
'rsend/rsend_024_pos': ['FAIL', '5665'],
'rsend/send-c_volume': ['FAIL', '6087'],
'snapshot/clone_001_pos': ['FAIL', known_reason],
+ 'snapshot/snapshot_009_pos': ['FAIL', '7961'],
+ 'snapshot/snapshot_010_pos': ['FAIL', '7961'],
'snapused/snapused_004_pos': ['FAIL', '5513'],
'tmpfile/setup': ['SKIP', tmpfile_reason],
'threadsappend/threadsappend_001_pos': ['FAIL', '6136'],
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