mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-12-26 03:09:34 +03:00
ZTS: fix wait_scrubbed()
Currently, wait_scrubbed() is the only function of its kind that accepts a timeout, which is 10s by default. This timeout is pretty short for a scrub and causes test failures if we run too long. This patch removes the timeout, instead leaning on the global test suite timeout to ensure the tests keep moving. Reviewed-by: Richard Elling <Richard.Elling@RichardElling.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Tom Caputi <tcaputi@datto.com> Closes #8210
This commit is contained in:
parent
2a6078450d
commit
7c46894081
@ -1029,7 +1029,7 @@ function get_endslice #<disk> <slice>
|
|||||||
|
|
||||||
((endcyl = (endcyl + 1) / ratio))
|
((endcyl = (endcyl + 1) / ratio))
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo $endcyl
|
echo $endcyl
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3209,15 +3209,10 @@ function wait_replacing #pool
|
|||||||
function wait_scrubbed
|
function wait_scrubbed
|
||||||
{
|
{
|
||||||
typeset pool=${1:-$TESTPOOL}
|
typeset pool=${1:-$TESTPOOL}
|
||||||
typeset iter=${2:-10}
|
while true ; do
|
||||||
typeset -i i=0
|
is_pool_scrubbed $pool && break
|
||||||
for i in {1..$iter} ; do
|
log_must sleep 1
|
||||||
if is_pool_scrubbed $pool ; then
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
sleep 1
|
|
||||||
done
|
done
|
||||||
return 1
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Backup the zed.rc in our test directory so that we can edit it for our test.
|
# Backup the zed.rc in our test directory so that we can edit it for our test.
|
||||||
|
@ -60,5 +60,5 @@ log_must zpool replace $TESTPOOL $DISK1 $DISK3
|
|||||||
# Wait for the resilver to finish, and then the subsequent scrub to finish.
|
# Wait for the resilver to finish, and then the subsequent scrub to finish.
|
||||||
# Waiting for the scrub has the effect of waiting for both. Timeout after 10
|
# Waiting for the scrub has the effect of waiting for both. Timeout after 10
|
||||||
# seconds if nothing is happening.
|
# seconds if nothing is happening.
|
||||||
log_must wait_scrubbed $TESTPOOL 10
|
log_must wait_scrubbed $TESTPOOL
|
||||||
log_pass "Successfully ran the scrub after resilver zedlet"
|
log_pass "Successfully ran the scrub after resilver zedlet"
|
||||||
|
Loading…
Reference in New Issue
Block a user