Subject: bug#40775: 28.0.50; dns-query sometimes infloops

From: Tassilo Horn <[email-masked]>
Date: Thu, 23 Apr 2020 18:51:10 +0200

Tassilo Horn <[email-masked]> writes:

> Since the recent changes to gravatar.el, the standard gravatar service
> is libravatar now.  gravatar--service-libravatar does some DNS queries
> to check if the domain of the mail address hosts the gravatar images
> itself.
>
> Sometimes, emacs gets stuck while doing the dns-query.  The emacs
> process uses 100% of one core of my system, and this situation
> persists for at least a minute (before I C-g, i.e., I don't know if it
> would ever recover from such a situation).

Ok, I think I have it.  It doesn't infloop, it just takes a lot of time
for DNS queries on some domains, and if the From, To and Cc of a message
contain many mail addresses, and for each one there are two dns-queries,
then it may add up to long delays (of several minutes).

For example, for me with emacs -Q

  (benchmark-run 1
    (dns-query "_avatars-sec._tcp.zjp.codes" 'SRV)
    (dns-query "_avatars._tcp.zjp.codes" 'SRV))

consistently takes 20 seconds, 10 seconds for each (unsuccessful) query.
Those queries will be performed for every [email-masked] mail address in
a message.

In contrast, the calls for my own mail address

  (benchmark-run 1
    (dns-query "_avatars-sec._tcp.gnu.org" 'SRV)
    (dns-query "_avatars._tcp.gnu.org" 'SRV))

"only" take 5 seconds, 2.5 per query.

Bye,
Tassilo