From: Otto Moerbeek Date: Wed, 30 Sep 2020 09:50:40 +0000 (+0200) Subject: Count number of queries as suggested by @rgacogne. Do not assert on it yet, X-Git-Tag: auth-4.4.0-alpha2~62^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F9559%2Fhead;p=thirdparty%2Fpdns.git Count number of queries as suggested by @rgacogne. Do not assert on it yet, we are seeing some non-deterministic behaviour. --- diff --git a/pdns/recursordist/test-syncres_cc2.cc b/pdns/recursordist/test-syncres_cc2.cc index b886200021..c7f40b44cb 100644 --- a/pdns/recursordist/test-syncres_cc2.cc +++ b/pdns/recursordist/test-syncres_cc2.cc @@ -105,8 +105,11 @@ BOOST_AUTO_TEST_CASE(test_glueless_referral_loop) const DNSName target1("powerdns.com."); const DNSName target2("powerdns.org."); + size_t queriesToNS = 0; + + sr->setAsyncCallback([target1, target2, &queriesToNS](const ComboAddress& ip, const DNSName& domain, int type, bool doTCP, bool sendRDQuery, int EDNS0Level, struct timeval* now, boost::optional& srcmask, boost::optional context, LWResult* res, bool* chained) { + queriesToNS++; - sr->setAsyncCallback([target1, target2](const ComboAddress& ip, const DNSName& domain, int type, bool doTCP, bool sendRDQuery, int EDNS0Level, struct timeval* now, boost::optional& srcmask, boost::optional context, LWResult* res, bool* chained) { if (isRootServer(ip)) { setLWResult(res, 0, false, false, true); @@ -150,6 +153,9 @@ BOOST_AUTO_TEST_CASE(test_glueless_referral_loop) int res = sr->beginResolve(target1, QType(QType::A), QClass::IN, ret); BOOST_CHECK_EQUAL(res, RCode::ServFail); BOOST_REQUIRE_EQUAL(ret.size(), 0U); + // Due to some non-deterministic behaviour in the recursor, this number varies. + // Investigate! See #9565 + //BOOST_CHECK_EQUAL(queriesToNS, 22U); } BOOST_AUTO_TEST_CASE(test_cname_qperq)