Make check 3.3.1 in the "ecs" system test more robust
The check in question is:
I:ecs:3.3.1 Execute several queries for the same tuple (where
I:ecs: tuple is name/class/type/clientsubnet) and check
I:ecs: that only one query is logged by the program. (59)
isc-private/bind9!549 works around the immediate problem with this check caused by QNAME Minimization code moving to NS queries, but there is further room for improvement to make it more reliable than it is right now.
As explained by @marka in #4195:
We don't actually have something that dumps the actual fetches.
dns_resolver_dumpfetches
dumps the per zone (domain) fetch counts (fctxcount_t) rather than the actual fetches (fetchctx_t) and that is the output we are examining here. Changing the name looked for todrop.test.example
will make the test pass as the resolution makes it deeper into the tree as drop.tests.example/NS is answered by ans8.I'd be tempted to rename
dns_resolver_dumpfetches
todns_resolver_dumpfetchesperzone
and correctly describe the output asActive fetch per zone
. Then write a realdns_resolver_dumpfetches
which reports the name and type as well as the number of clients waiting on a response, etc.