mirror of
https://github.com/isc-projects/bind9.git
synced 2026-04-23 23:28:18 -04:00
Merge branch 'mnowak/rpz-drop-queryperf-support' into 'main'
Drop queryperf support from rpz system test See merge request isc-projects/bind9!8649
This commit is contained in:
commit
b54bdf8d78
3 changed files with 0 additions and 101 deletions
|
|
@ -1,22 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
|
||||
#
|
||||
# SPDX-License-Identifier: MPL-2.0
|
||||
#
|
||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, you can obtain one at https://mozilla.org/MPL/2.0/.
|
||||
#
|
||||
# See the COPYRIGHT file distributed with this work for additional
|
||||
# information regarding copyright ownership.
|
||||
|
||||
for QDIR in $(echo "$PATH" | tr : ' ') ../../../../contrib/queryperf; do
|
||||
QPERF=$QDIR/queryperf
|
||||
if test -f "$QPERF" -a -x "$QPERF"; then
|
||||
echo $QPERF
|
||||
exit 0
|
||||
fi
|
||||
done
|
||||
|
||||
exit 0
|
||||
|
|
@ -17,8 +17,6 @@ set -e
|
|||
|
||||
. ../conf.sh
|
||||
|
||||
QPERF=$($SHELL qperf.sh)
|
||||
|
||||
$SHELL clean.sh
|
||||
|
||||
for dir in ns*; do
|
||||
|
|
@ -118,32 +116,6 @@ a3-17.tld2 500 A 17.17.17.17
|
|||
ns1.x.rpz-nsdname CNAME .
|
||||
EOF
|
||||
|
||||
if test -n "$QPERF"; then
|
||||
# Do not build the full zones if we will not use them.
|
||||
$PERL -e 'for ($val = 1; $val <= 65535; ++$val) {
|
||||
printf("host-%05d\tA 192.168.%d.%d\n", $val, $val/256, $val%256);
|
||||
}' >>ns5/example.db
|
||||
|
||||
echo >>ns5/bl.db
|
||||
echo "; rewrite some names" >>ns5/bl.db
|
||||
$PERL -e 'for ($val = 2; $val <= 65535; $val += 69) {
|
||||
printf("host-%05d.example.tld5\tCNAME\t.\n", $val);
|
||||
}' >>ns5/bl.db
|
||||
|
||||
echo >>ns5/bl.db
|
||||
echo "; rewrite with some not entirely trivial patricia trees" >>ns5/bl.db
|
||||
$PERL -e 'for ($val = 3; $val <= 65535; $val += 69) {
|
||||
printf("32.%d.%d.168.192.rpz-ip \tCNAME\t.\n",
|
||||
$val%256, $val/256);
|
||||
}' >>ns5/bl.db
|
||||
fi
|
||||
|
||||
# some psuedo-random queryperf requests
|
||||
$PERL -e 'for ($cnt = $val = 1; $cnt <= 3000; ++$cnt) {
|
||||
printf("host-%05d.example.tld5 A\n", $val);
|
||||
$val = ($val * 9 + 32771) % 65536;
|
||||
}' >ns5/requests
|
||||
|
||||
cp ns2/bl.tld2.db.in ns2/bl.tld2.db
|
||||
cp ns5/empty.db.in ns5/empty.db
|
||||
cp ns5/empty.db.in ns5/policy2.db
|
||||
|
|
|
|||
|
|
@ -720,57 +720,6 @@ done
|
|||
end_group
|
||||
ckstats $ns3 bugs ns3 8
|
||||
|
||||
# superficial test for major performance bugs
|
||||
QPERF=$(sh qperf.sh)
|
||||
if test -n "$QPERF"; then
|
||||
perf() {
|
||||
date "+${TS}checking performance $1" | cat_i
|
||||
# Dry run to prime everything
|
||||
comment "before dry run $1"
|
||||
$RNDCCMD $ns5 notrace
|
||||
$QPERF -c -1 -l30 -d ns5/requests -s $ns5 -p ${PORT} >/dev/null
|
||||
comment "before real test $1"
|
||||
PFILE="ns5/$2.perf"
|
||||
$QPERF -c -1 -l30 -d ns5/requests -s $ns5 -p ${PORT} >$PFILE
|
||||
comment "after test $1"
|
||||
X=$(sed -n -e 's/.*Returned *\([^ ]*:\) *\([0-9]*\) .*/\1\2/p' $PFILE \
|
||||
| tr '\n' ' ')
|
||||
if test "$X" != "$3"; then
|
||||
setret "wrong results '$X' in $PFILE"
|
||||
fi
|
||||
ckalive $ns5 "failed; server #5 crashed"
|
||||
}
|
||||
trim() {
|
||||
sed -n -e 's/.*Queries per second: *\([0-9]*\).*/\1/p' ns5/$1.perf
|
||||
}
|
||||
|
||||
# get qps with rpz
|
||||
perf 'with RPZ' rpz 'NOERROR:2900 NXDOMAIN:100 '
|
||||
RPZ=$(trim rpz)
|
||||
# turn off rpz and measure qps again
|
||||
echo "# RPZ off" >ns5/rpz-switch
|
||||
RNDCCMD_OUT=$($RNDCCMD $ns5 reload)
|
||||
perf 'without RPZ' norpz 'NOERROR:3000 '
|
||||
NORPZ=$(trim norpz)
|
||||
|
||||
PERCENT=$(((RPZ * 100 + (NORPZ / 2)) / NORPZ))
|
||||
echo_i "$RPZ qps with RPZ is $PERCENT% of $NORPZ qps without RPZ"
|
||||
|
||||
MIN_PERCENT=30
|
||||
if test "$PERCENT" -lt $MIN_PERCENT; then
|
||||
echo_i "$RPZ qps with rpz or $PERCENT% is below $MIN_PERCENT% of $NORPZ qps"
|
||||
fi
|
||||
|
||||
if test "$PERCENT" -ge 100; then
|
||||
echo_i "$RPZ qps with RPZ or $PERCENT% of $NORPZ qps without RPZ is too high"
|
||||
fi
|
||||
|
||||
ckstats $ns5 performance ns5 200
|
||||
|
||||
else
|
||||
echo_i "performance not checked; queryperf not available"
|
||||
fi
|
||||
|
||||
# Ensure ns3 manages to transfer the fast-expire zone before shutdown.
|
||||
nextpartreset ns3/named.run
|
||||
wait_for_log 20 "zone fast-expire/IN: transferred serial 1" ns3/named.run
|
||||
|
|
|
|||
Loading…
Reference in a new issue