plan9front/sys/src/cmd/ndb
sl 4bbb3b0b21 /sys/src/cmd/ndb/dns.h:
---

To: 9front@9front.org
Date: Sun, 07 Feb 2021 14:56:39 +0100
From: kvik@a-b.xyz
Subject: Re: [9front] transient dns errors cause smtp failure
Reply-To: 9front@9front.org

I think I found a reason for DNS failing on known good domains.

/sys/src/cmd/ndb/dns.h:156,157
	/* tune; was 60*1000; keep it short */
	Maxreqtm=	8*1000,	/* max. ms to process a request */

So, 8 seconds is how much the resolver will bother with a request it
has been handed, before dropping it on the floor with little
explanation.

It seems quite possible that this is too short a timeout on a machine
during a spam queue run, which predictably stresses the compute and
network resources.

In turn, negative response caching might explain why a particular
unlucky domain would basically stop receiveing any mail for a while.

I'm dying to know if bumping this limit would clear up the queue of
such DNS errors.

---

[narrator: it did.]
2021-02-19 21:29:55 -05:00
..
convDNS2M.c ndb/dns: implement RFC6844 certificate authority authorization record type 2021-02-14 14:25:41 +01:00
convM2DNS.c ndb/dns: implement RFC6844 certificate authority authorization record type 2021-02-14 14:25:41 +01:00
cs.c pre-lib9p servers: fix incorrect Tversion handling 2020-08-01 15:27:28 +02:00
csquery.c ndb/dnsquery, ndb/csquery: write ">" prompt to stderr (thanks kvik) 2019-08-30 20:17:19 +02:00
dblookup.c ndb/dns: implement RFC6844 certificate authority authorization record type 2021-02-14 14:25:41 +01:00
dn.c ndb/dns: implement RFC6844 certificate authority authorization record type 2021-02-14 14:25:41 +01:00
dnarea.c ndb/dns: mark ns record authoritative when in our area for delegation 2020-10-17 21:28:25 +02:00
dnnotify.c ndb/dns: do recursive lookup for dnsslave= 2018-10-11 18:31:35 +02:00
dnresolve.c ndb/dns: avoid format strings in procname 2018-10-11 18:29:17 +02:00
dns.c pre-lib9p servers: fix incorrect Tversion handling 2020-08-01 15:27:28 +02:00
dns.h /sys/src/cmd/ndb/dns.h: 2021-02-19 21:29:55 -05:00
dnsdebug.c ndb/dns: implement RFC6844 certificate authority authorization record type 2021-02-14 14:25:41 +01:00
dnserver.c ndb/dns: use nil for pointers in dnresolve() args 2018-10-11 18:32:31 +02:00
dnsgetip.c ndb/dns: use nil for pointers in dnresolve() args 2018-10-11 18:32:31 +02:00
dnsquery.c ndb/dnsquery, ndb/csquery: write ">" prompt to stderr (thanks kvik) 2019-08-30 20:17:19 +02:00
dnstcp.c dnstcp: temporarily switch on resolver mode so we can resolve the dnsslaves for axfr check 2018-11-06 04:31:48 +01:00
dnudpserver.c fix misleading/wrong fd checks 2018-10-20 18:44:09 +00:00
inform.c libc: return number of bytes produced for idn2utf() and utf2idn() 2018-09-26 14:32:17 +02:00
ipquery.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
mkdb.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
mkfile ndb/dns: use libc's new idn functions 2018-09-25 20:17:00 +02:00
mkhash.c dns: import changes from sources 2012-03-09 06:02:17 +01:00
mkhosts.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
query.c Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00