From f9317d65b36e31ed79939313ae90abb94f9894ab Mon Sep 17 00:00:00 2001 From: "W.C.A. Wijngaards" Date: Mon, 12 Jun 2023 12:39:00 +0200 Subject: [PATCH] - Fix for uncertain unit test for doh buffer size events. --- doc/Changelog | 1 + .../doh_downstream_buffer_size.test | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/doc/Changelog b/doc/Changelog index e6d323e84..7b3b65bb9 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -3,6 +3,7 @@ directories to sys.path. - Fix #895: python + sysconfig gives ANOTHER path comparing to distutils. + - Fix for uncertain unit test for doh buffer size events. 25 May 2023: Wouter - Fix unbound-dnstap-socket printout when no query is present. diff --git a/testdata/doh_downstream_buffer_size.tdir/doh_downstream_buffer_size.test b/testdata/doh_downstream_buffer_size.tdir/doh_downstream_buffer_size.test index bbeb9eb2b..45bde6564 100644 --- a/testdata/doh_downstream_buffer_size.tdir/doh_downstream_buffer_size.test +++ b/testdata/doh_downstream_buffer_size.tdir/doh_downstream_buffer_size.test @@ -23,15 +23,26 @@ if test "$?" -ne 0; then fi num=$(grep "ANSWER SEC" outfile | wc -l) # 58 byte answers, 500 byte max response buffer -> 8 answers + +# Sometimes unbound is scheduled to be able to respond very quickly, +# before all the queries are sent, and then writes some of the queries +# back already, emptying the buffer, which then does not overflow. +# The attempt is to detect this test flakyness with 'mode w' write lines. +nummodew=$(grep "mode w" unbound.log | wc -l) +echo "num answers $num and num write events $nummodew" if [ $num -eq 8 ]; then echo "content OK" else + if [ "(" $num -eq 9 -o $num -eq 10 ")" -a $nummodew -eq 2 ]; then + echo "skip buffer emptied event" + else echo "result contents not OK" echo "> cat logfiles" cat outfile cat unbound.log echo "result contents not OK" exit 1 + fi fi echo "OK"