- PREFIX=$(pwd)/.local ./ci/respdiff/start-resolvers.sh
- ./ci/respdiff/run-respdiff-tests.sh udp
- cat results/respdiff.txt
- - echo 'test if mismatch rate >= 1 %'
- - grep -q '^target disagrees.*0\.[0-9][0-9] %' results/respdiff.txt
+ - echo 'test if mismatch rate < 0.8 %'
+ - grep -q '^target disagrees.*0\.[0-7][0-9] %' results/respdiff.txt
- killall --wait kresd
- PREFIX=$(pwd)/.local MAKEFLAGS="--jobs $(nproc)" make coverage-c coverage-lua COVERAGE_STAGE=gcov-respdiff-iter-udp
dependencies:
- PREFIX=$(pwd)/.local ./ci/respdiff/start-resolvers.sh
- ./ci/respdiff/run-respdiff-tests.sh tcp
- cat results/respdiff.txt
- - echo 'test if mismatch rate >= 1 %'
- - grep -q '^target disagrees.*0\.[0-9][0-9] %' results/respdiff.txt
+ - echo 'test if mismatch rate < 0.8 %'
+ - grep -q '^target disagrees.*0\.[0-7][0-9] %' results/respdiff.txt
- killall --wait kresd
- PREFIX=$(pwd)/.local MAKEFLAGS="--jobs $(nproc)" make coverage-c coverage-lua COVERAGE_STAGE=gcov-respdiff-iter-tcp
dependencies:
- PREFIX=$(pwd)/.local ./ci/respdiff/start-resolvers.sh
- ./ci/respdiff/run-respdiff-tests.sh tls
- cat results/respdiff.txt
- - echo 'test if mismatch rate >= 1 %'
- - grep -q '^target disagrees.*0\.[0-9][0-9] %' results/respdiff.txt
+ - echo 'test if mismatch rate < 0.8 %'
+ - grep -q '^target disagrees.*0\.[0-7][0-9] %' results/respdiff.txt
- killall --wait kresd
- PREFIX=$(pwd)/.local MAKEFLAGS="--jobs $(nproc)" make coverage-c coverage-lua COVERAGE_STAGE=gcov-respdiff-iter-tls
dependencies:
port = 5353
transport = tcp
graph_color = #00a2e2
+restart_script = /builds/knot/knot-resolver/ci/respdiff/restart-kresd.sh
[bind]
ip = 127.0.0.1
port = 53533
transport = udp
graph_color = #e2a000
+restart_script = /builds/knot/knot-resolver/ci/respdiff/restart-bind.sh
[unbound]
ip = 127.0.0.1
port = 53535
transport = udp
graph_color = #218669
+restart_script = /builds/knot/knot-resolver/ci/respdiff/restart-unbound.sh
[diff]
# symbolic name of server under test
# diffsum reports mismatches in field values in this order
# if particular message has multiple mismatches, it is counted only once into category with highest weight
field_weights = timeout, opcode, qcase, qtype, rcode, flags, answertypes, answerrrsigs, answer, authority, additional, edns, nsid
-
port = 8853
transport = tls
graph_color = #00a2e2
+restart_script = /builds/knot/knot-resolver/ci/respdiff/restart-kresd.sh
[bind]
ip = 127.0.0.1
port = 53533
transport = udp
graph_color = #e2a000
+restart_script = /builds/knot/knot-resolver/ci/respdiff/restart-bind.sh
[unbound]
ip = 127.0.0.1
port = 53535
transport = udp
graph_color = #218669
+restart_script = /builds/knot/knot-resolver/ci/respdiff/restart-unbound.sh
[diff]
# symbolic name of server under test
# diffsum reports mismatches in field values in this order
# if particular message has multiple mismatches, it is counted only once into category with highest weight
field_weights = timeout, opcode, qcase, qtype, rcode, flags, answertypes, answerrrsigs, answer, authority, additional, edns, nsid
-
port = 5353
transport = udp
graph_color = #00a2e2
+restart_script = /builds/knot/knot-resolver/ci/respdiff/restart-kresd.sh
[bind]
ip = 127.0.0.1
port = 53533
transport = udp
graph_color = #e2a000
+restart_script = /builds/knot/knot-resolver/ci/respdiff/restart-bind.sh
[unbound]
ip = 127.0.0.1
port = 53535
transport = udp
graph_color = #218669
+restart_script = /builds/knot/knot-resolver/ci/respdiff/restart-unbound.sh
[diff]
# symbolic name of server under test
# diffsum reports mismatches in field values in this order
# if particular message has multiple mismatches, it is counted only once into category with highest weight
field_weights = timeout, opcode, qcase, qtype, rcode, flags, answertypes, answerrrsigs, answer, authority, additional, edns, nsid
-
--- /dev/null
+#!/bin/sh
+service bind9 restart
--- /dev/null
+#!/bin/sh
+exec > /dev/null
+exec 2>&1
+
+PREFIX=$(pwd)/.local
+killall -w kresd
+rm -f '*.mdb'
+LD_LIBRARY_PATH=$PREFIX/lib $PREFIX/sbin/kresd -f 1 -q -c $(pwd)/ci/respdiff/kresd.config &>>kresd.log &
+
+# wait until socket is receiving connections
+sleep 1
--- /dev/null
+#!/bin/sh
+service unbound restart
# respdiff scripts must be present in /var/opt/respdiff
set -o errexit -o nounset -o xtrace
+NDIFFREPRO=3
+
wget https://gitlab.labs.nic.cz/knot/knot-resolver/snippets/69/raw?inline=false -O /tmp/queries.txt
mkdir results
rm -rf respdiff.db
/var/opt/respdiff/qprep.py respdiff.db < /tmp/queries.txt
time /var/opt/respdiff/orchestrator.py respdiff.db -c "${CONFIG}"
time /var/opt/respdiff/msgdiff.py respdiff.db -c "${CONFIG}"
+for i in $(seq $NDIFFREPRO); do
+ time /var/opt/respdiff/diffrepro.py -c "${CONFIG}" respdiff.db
+done
/var/opt/respdiff/diffsum.py respdiff.db -c "${CONFIG}" > results/respdiff.txt
/var/opt/respdiff/histogram.py respdiff.db -c "${CONFIG}" -o results/histogram.svg
: minimize LMDB and log size so they can be effectively archived