From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Subject: bug#27157: [PATCH] Re: bug#27157: Building Guile 2.2 "times out" Date: Sat, 03 Jun 2017 23:37:55 +0200 Message-ID: <87mv9oiwgc.fsf@gnu.org> References: <871sr5sm11.fsf@gmail.com> <878tld2quh.fsf@elephly.net> <87d1ao91vy.fsf@gnu.org> <87o9u7r8ug.fsf@gmail.com> <87lgpb75jk.fsf@gnu.org> <87tw3wq01b.fsf_-_@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:43570) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dHGlG-0007hE-1O for bug-guix@gnu.org; Sat, 03 Jun 2017 17:39:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dHGlC-0006op-Dr for bug-guix@gnu.org; Sat, 03 Jun 2017 17:39:05 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:51600) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dHGlC-0006oe-9O for bug-guix@gnu.org; Sat, 03 Jun 2017 17:39:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dHGlC-0007Sb-3L for bug-guix@gnu.org; Sat, 03 Jun 2017 17:39:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87tw3wq01b.fsf_-_@gmail.com> (Maxim Cournoyer's message of "Sat, 03 Jun 2017 13:38:40 -0700") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Maxim Cournoyer Cc: 27157@debbugs.gnu.org Maxim Cournoyer skribis: > ludo@gnu.org (Ludovic Court=C3=A8s) writes: > >> Maxim Cournoyer skribis: >> >>> Guix build doesn't come with default option value for the >>> max-silent-time, but guix environment does, and it is set to 3600 >>> s. This is defined under (guix scripts environment): >>> >>> (define %default-options >>> `((system . ,(%current-system)) >>> (substitutes? . #t) >>> (graft? . #t) >>> (max-silent-time . 3600) >>> (verbosity . 0))) >>> >>> If this is by design, I guess this issue can be closed. >> >> Good catch! >> >> However, according to =E2=80=98set-build-options=E2=80=99 in (guix store= ), >> #:max-silent-time #f is equivalent to #:max-silent-time 3600. > > IIUC, this should only be true when (< (nix-server-minor-version > server) #x61), as can be seen in (guix store): > > (when (< (nix-server-minor-version server) #x61) > (let ((max-build-jobs (or max-build-jobs 1)) > (xomax-silent-time (or max-silent-time 3600))) > (send (integer max-build-jobs) (integer max-silent-time)))) Oooh, indeed, sorry for the confusion. So what happens when #:max-silent-time is #f is that we use the daemon=E2=80=99s default value, = which is infinite (zero) by default (see libstore/globals.cc). > Given that the the nix worker protocole PROTOCOL_VERSION was bumped to > 0x161 in commit deac976d3d26c7b85b9c90efb424b0aa94f1027c last January, I > would *not* expect this condition to be evaluated. > > By the way, I find it weird that these conditions be expressed in terms > of the minor version number only. The correctness of those is thus only > guaranteed as long as the major number version is not bumped; this seems > unwise. Historical baggage: the major number was never bumped, I think. :-) You=E2=80=99re right though. >> At any rate, it would be good to remove =E2=80=98max-silent-time=E2=80= =99 from all the >> =E2=80=98%default-options=E2=80=99 variables, for consistency. >> >> Ludo=E2=80=99. > > I agree! In my view, interactive user commands should expect the users > to take action themselves (e.g.; user notice no output for 3 hours; hits > C-c. Or, user notice no output for 3 hours, check the process in top, > sees it's still doing something, decides to leave it running a couple > more hours). Yes. Would you like to prepare a patch to remove =E2=80=98max-silent-time= =E2=80=99 from all the =E2=80=98%default-options=E2=80=99? In the meantime I=E2=80=99ll add --timeout and --max-silent-time as options= to guix-daemon. Thanks! Ludo=E2=80=99.