Add retry loop for tests immediately after server restart
This commit is contained in:
committed by
Witold Kręcicki
parent
da5da14f36
commit
de05f22fd5
@@ -14,6 +14,7 @@ rm -f ns*/named.run
|
||||
rm -f ns*/named.lock
|
||||
|
||||
# build.sh
|
||||
rm -f ns1/named_dump.db*
|
||||
rm -f ns6/K*
|
||||
rm -f ns6/dsset-*
|
||||
rm -f ns6/edns512.db
|
||||
|
||||
@@ -122,16 +122,24 @@ do
|
||||
done
|
||||
|
||||
echo_i "checking large unknown record loading on master"
|
||||
ret=0
|
||||
$DIG $DIGOPTS @10.53.0.1 +tcp +short large.example TYPE45234 > dig.out || { ret=1 ; echo_i "dig failed" ; }
|
||||
$DIFF -s large.out dig.out > /dev/null || { ret=1 ; echo_i "$DIFF failed"; }
|
||||
for try in 0 1 2 3 4 5 6 7 8 9; do
|
||||
ret=0
|
||||
$DIG $DIGOPTS @10.53.0.1 +tcp +short large.example TYPE45234 > dig.out || { ret=1 ; echo_i "dig failed" ; }
|
||||
$DIFF -s large.out dig.out > /dev/null || { ret=1 ; echo_i "$DIFF failed"; }
|
||||
[ "$ret" -eq 0 ] && break
|
||||
sleep 1
|
||||
done
|
||||
[ $ret = 0 ] || echo_i "failed"
|
||||
status=`expr $status + $ret`
|
||||
|
||||
echo_i "checking large unknown record loading on slave"
|
||||
ret=0
|
||||
$DIG $DIGOPTS @10.53.0.2 +tcp +short large.example TYPE45234 > dig.out || { ret=1 ; echo_i "dig failed" ; }
|
||||
$DIFF -s large.out dig.out > /dev/null || { ret=1 ; echo_i "$DIFF failed"; }
|
||||
for try in 0 1 2 3 4 5 6 7 8 9; do
|
||||
ret=0
|
||||
$DIG $DIGOPTS @10.53.0.2 +tcp +short large.example TYPE45234 > dig.out || { ret=1 ; echo_i "dig failed" ; }
|
||||
$DIFF -s large.out dig.out > /dev/null || { ret=1 ; echo_i "$DIFF failed"; }
|
||||
[ "$ret" -eq 0 ] && break
|
||||
sleep 1
|
||||
done
|
||||
[ $ret = 0 ] || echo_i "failed"
|
||||
status=`expr $status + $ret`
|
||||
|
||||
@@ -139,10 +147,16 @@ echo_i "stop and restart slave"
|
||||
$PERL $SYSTEMTESTTOP/stop.pl unknown ns2
|
||||
$PERL $SYSTEMTESTTOP/start.pl --noclean --restart --port ${PORT} unknown ns2
|
||||
|
||||
# server may be answering queries before zones are loaded,
|
||||
# so retry a few times if this query fails
|
||||
echo_i "checking large unknown record loading on slave"
|
||||
ret=0
|
||||
$DIG $DIGOPTS @10.53.0.2 +tcp +short large.example TYPE45234 > dig.out || { ret=1 ; echo_i "dig failed" ; }
|
||||
$DIFF -s large.out dig.out > /dev/null || { ret=1 ; echo_i "$DIFF failed"; }
|
||||
for try in 0 1 2 3 4 5 6 7 8 9; do
|
||||
ret=0
|
||||
$DIG $DIGOPTS @10.53.0.2 +tcp +short large.example TYPE45234 > dig.out || { ret=1 ; echo_i "dig failed" ; }
|
||||
$DIFF -s large.out dig.out > /dev/null || { ret=1 ; echo_i "$DIFF failed"; }
|
||||
[ "$ret" -eq 0 ] && break
|
||||
sleep 1
|
||||
done
|
||||
[ $ret = 0 ] || echo_i "failed"
|
||||
status=`expr $status + $ret`
|
||||
|
||||
@@ -157,10 +171,16 @@ echo_i "stop and restart inline slave"
|
||||
$PERL $SYSTEMTESTTOP/stop.pl unknown ns3
|
||||
$PERL $SYSTEMTESTTOP/start.pl --noclean --restart --port ${PORT} unknown ns3
|
||||
|
||||
# server may be answering queries before zones are loaded,
|
||||
# so retry a few times if this query fails
|
||||
echo_i "checking large unknown record loading on inline slave"
|
||||
ret=0
|
||||
$DIG $DIGOPTS @10.53.0.3 +tcp +short large.example TYPE45234 > dig.out || { ret=1 ; echo_i "dig failed" ; }
|
||||
$DIFF large.out dig.out > /dev/null || { ret=1 ; echo_i "$DIFF failed"; }
|
||||
for try in 0 1 2 3 4 5 6 7 8 9; do
|
||||
ret=0
|
||||
$DIG $DIGOPTS @10.53.0.3 +tcp +short large.example TYPE45234 > dig.out || { ret=1 ; echo_i "dig failed" ; }
|
||||
$DIFF large.out dig.out > /dev/null || { ret=1 ; echo_i "$DIFF failed"; }
|
||||
[ "$ret" -eq 0 ] && break
|
||||
sleep 1
|
||||
done
|
||||
[ $ret = 0 ] || echo_i "failed"
|
||||
status=`expr $status + $ret`
|
||||
|
||||
|
||||
@@ -431,12 +431,17 @@ $DIG -p ${PORT} txt mapped @10.53.0.3 > dig.out.1.$n
|
||||
grep "status: NOERROR," dig.out.1.$n > /dev/null || tmp=1
|
||||
$PERL $SYSTEMTESTTOP/stop.pl xfer ns3
|
||||
$PERL $SYSTEMTESTTOP/start.pl --noclean --restart --port ${PORT} xfer ns3
|
||||
sleep 1
|
||||
$DIG -p ${PORT} txt mapped @10.53.0.3 > dig.out.2.$n
|
||||
grep "status: NOERROR," dig.out.2.$n > /dev/null || tmp=1
|
||||
$DIG -p ${PORT} axfr mapped @10.53.0.3 > dig.out.3.$n
|
||||
digcomp knowngood.mapped dig.out.3.$n || tmp=1
|
||||
if test $tmp != 0 ; then echo_i "failed"; fi
|
||||
for try in 0 1 2 3 4 5 6 7 8 9; do
|
||||
iret=0
|
||||
$DIG -p ${PORT} txt mapped @10.53.0.3 > dig.out.2.$n
|
||||
grep "status: NOERROR," dig.out.2.$n > /dev/null || iret=1
|
||||
$DIG -p ${PORT} axfr mapped @10.53.0.3 > dig.out.3.$n
|
||||
digcomp knowngood.mapped dig.out.3.$n || iret=1
|
||||
[ "$iret" -eq 0 ] && break
|
||||
sleep 1
|
||||
done
|
||||
[ "$iret" -eq 0 ] || tmp=1
|
||||
[ "$tmp" -ne 0 ] && echo_i "failed"
|
||||
status=`expr $status + $tmp`
|
||||
|
||||
n=`expr $n + 1`
|
||||
|
||||
Reference in New Issue
Block a user