GNU bug report logs - #30290
guix-daemon slows to a crawl when a substitute server is offline

Previous Next

Package: guix;

Reported by: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Date: Tue, 30 Jan 2018 03:09:01 UTC

Severity: normal

Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Subject: bug#30290: closed (Re: bug#30290: guix-daemon slows to a crawl
 when a substitute server is offline)
Date: Mon, 10 Oct 2022 03:04:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#30290: guix-daemon slows to a crawl when a substitute server is offline

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 30290 <at> debbugs.gnu.org.

-- 
30290: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=30290
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: zimoun <zimon.toutoune <at> gmail.com>
Cc: Mathieu Othacehe <othacehe <at> gnu.org>, ludo <at> gnu.org,
 30290-done <at> debbugs.gnu.org
Subject: Re: bug#30290: guix-daemon slows to a crawl when a substitute
 server is offline
Date: Sun, 09 Oct 2022 23:03:16 -0400
Hi Simon,

zimoun <zimon.toutoune <at> gmail.com> writes:

> Hi Maxim,
>
> On Wed, 23 Mar 2022 at 11:50, zimoun <zimon.toutoune <at> gmail.com> wrote:
>> On Wed, 18 Aug 2021 at 22:25, Maxim Cournoyer <maxim.cournoyer <at> gmail.com> wrote:
>
>>> Extra note: the problems reported earlier (hang or backtrace instead of
>>> graceful fallback to other substitute servers) also affect the scenario
>>> where substitutes are fetched from uDNS discovered substitute servers (I
>>> just tried).
>>
>> I guess this old bug [1] about the daemon hanging is still there, right?
>>
>> How such issue could be tackled?
>>
>> 1: <http://issues.guix.gnu.org/issue/30290>
>
> What could be actionable for tackling this old bug?

I can't seem to reproduce the original issue, which was that an offline
server would slow down fetching of substitutes by repeatedly trying to
reach it, at least when setting e.g.:

--8<---------------cut here---------------start------------->8---
127.0.0.2 ci.guix.gnu.org
--8<---------------cut here---------------end--------------->8---

In my /etc/hosts file to simulate it's unreachable, with at least
another substitute server available in my --substitute-urls list.  It
goes right to that second server without loosing any time.

Closing for now, we can always reopen the issue if it manifests itself
in the future.

-- 
Thanks,
Maxim

[Message part 3 (message/rfc822, inline)]
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: bug-guix <bug-guix <at> gnu.org>
Subject: guix-daemon slows to a crawl when a substitute server is offline
Date: Mon, 29 Jan 2018 22:07:49 -0500
When a substitute server used by guix-daemon is offline, the daemon will
keep attempting to connect to it, even when it shouldn't need any data
(ran 'sudo guix system reconfigure my-config.scm' multiple times in a
row.

With the disconnected server (bayfront in my case), that command would
take close to 8 minutes, with many system calls like:

--8<---------------cut here---------------start------------->8---
connect(14, {sa_family=AF_INET, sin_port=htons(443), sin_addr=inet_addr("141.255.128.56")}, 16) = -1 EINPROGRESS
--8<---------------cut here---------------end--------------->8---

which wasted 5 seconds each time.

After removing this server from my substitute servers list, the same
operation (system reconfigure) is 8 times faster (1 minute).

Suggestion: the daemon should stop trying to use the offline substitute
server after trying for X times, and print a warning about it.

Maxim



This bug report was last modified 2 years and 223 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.