Discovered substitute servers not removed when they go offline

  • Open
  • quality assurance status badge
One participant
  • Ludovic Courtès
Submitted by
Ludovic Courtès

Debbugs page

Ludovic Courtès wrote on 27 Feb 15:05 -0800
(address .

Substitute servers discovered over Avahi don’t disappear when they go
off-line: they remain in /var/guix/discover/publish “forever” (?) and
‘guix substitute’ keeps trying to connect to them, in vain.

The problem AIUI is that the mDNS records are still valid according to
their TTL and thus cached by avahi-daemon; we can only notice that
things go wrong when trying to resolve:

Toggle snippet (7 lines)
$ avahi-browse _guix_publish._tcp -r
+ enp0s31f6 IPv6 guix-publish-xyz _guix_publish._tcp local
+ enp0s31f6 IPv4 guix-publish-xyz _guix_publish._tcp local
Failed to resolve service 'guix-publish-xyz' of type '_guix_publish._tcp' in domain 'local': Timeout reached
Failed to resolve service 'guix-publish-xyz' of type '_guix_publish._tcp' in domain 'local': Timeout reached

(One way to reproduce that is to ‘pkill -9 avahi-daemon’ on the machine
that advertises the service.)

Problem is that ‘avahi-browse-service-thread’ attempts to resolve
services once for all; thus it never notices that services went away, at
least not until some long TTL has expired.

Ludovic Courtès wrote on 4 Apr 14:36 -0700
control message for bug #69442
(address .
severity 69442 important
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to

To respond to this issue using the mumi CLI, first switch to it
mumi current 69442
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch