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 <guss80@gmail.com> Reviewed-by: George Melikov <mail@gmelikov.ru> Reviewed-by: John Kennedy <john.kennedy@delphix.com> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #7961 Closes #7962
This commit is contained in:
parent
424fd7c3e0
commit
838bd5ff35
|
@ -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'],
|
||||
|
|
|
@ -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
|
||||
|
||||
#
|
||||
|
|
|
@ -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 \
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue