GNU bug report logs - #64302
Guix derivation cannot be computed during pull

Previous Next

Package: guix;

Reported by: Andreas Enge <andreas <at> enge.fr>

Date: Mon, 26 Jun 2023 15:16:01 UTC

Severity: normal

Merged with 64489

To reply to this bug, email your comments to 64302 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#64302; Package guix. (Mon, 26 Jun 2023 15:16:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Andreas Enge <andreas <at> enge.fr>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Mon, 26 Jun 2023 15:16:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Andreas Enge <andreas <at> enge.fr>
To: bug-guix <at> gnu.org
Subject: Guix derivation cannot be computed during pull
Date: Mon, 26 Jun 2023 17:15:00 +0200
Hello,

here is what happens on a server I do not manage to update for about a year now:

$ guix pull
Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
Authenticating channel 'guix', commits 9edb3f6 to 1bc878d (1,055 new commits)...
Building from this channel:
  guix      https://git.savannah.gnu.org/git/guix.git	1bc878d
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
building /gnu/store/a2zzynwqii5j84gg9zn2brkh0hiqrh6n-module-import.drv...
building /gnu/store/s8bj7c9nd85ng871h4440w7jw6p0hxpq-module-import.drv...
building /gnu/store/3m2pndmnxj91s80ad1kvjw7kjsgpf733-module-import-compiled.drv...
building /gnu/store/fg3r0s0r1sbljjdvgsnjkkziskn3fagp-module-import-compiled.drv...
building /gnu/store/a2lgmyr95d3nr0snp31662rygf5g7cz7-compute-guix-derivation.drv...
Computing Guix derivation for 'x86_64-linux'... /guix pull: error: You found a bug: the program '/gnu/store/wvni7k3g4wnf0k782zgfv4gya9bnw8gg-compute-guix-derivation'
failed to compute the derivation for Guix (version: "1bc878ded2ea349384da6a72d4b8326c63c794b4"; system: "x86_64-linux";
host version: "35b176daf1a466f136f0b77c03de78f482a30702"; pull-version: 1).
Please report the COMPLETE output above by email to <bug-guix <at> gnu.org>.

Here is the content of the compute-guix-derivation script:
#!/gnu/store/1kws5vkl0glvpxg7arabsv6q9vazp0hx-guile-3.0.7/bin/guile --no-auto-compile
!#
(eval-when (expand load eval) (set! %load-path (cons "/gnu/store/ic6dz76n6kax93q32b3356dvpl19iv5w-module-import" %load-path)) (set! %load-compiled-path (cons "/gnu/store/hkmx7wwwzdycj5q76j08ffn479vmvdax-module-import-compiled" %load-compiled-path)))(begin (use-modules (ice-9 match)) (eval-when (expand load eval) (match (command-line) ((_ source _ ...) (match %load-path ((front _ ...) (unless (string=? front source) (set! %load-path (list source (string-append "/gnu/store/60jl4xry9c93j9l0rr7nkvbw7dihjz4k-guile-gcrypt-0.3.0" "/share/guile/site/" (effective-version)) front))))))) (set! %load-compiled-path (cons (string-append "/gnu/store/60jl4xry9c93j9l0rr7nkvbw7dihjz4k-guile-gcrypt-0.3.0" "/lib/guile/" (effective-version) "/site-ccache") %load-compiled-path)) (read-disable (quote positions))) (use-modules (guix store) (guix self) (guix derivations) (srfi srfi-1)) (match (command-line) ((_ source system version protocol-version build-output) (let* ((proto (string->number protocol-version)) (store (if (integer? proto) (port->connection (duplicate-port (current-input-port) "w+0") #:version proto) (open-connection))) (sock (socket AF_UNIX SOCK_STREAM 0))) (connect sock AF_UNIX build-output) (display (and=> (parameterize ((current-warning-port (%make-void-port "w")) (current-build-output-port sock)) (run-with-store store (guix-derivation source version "3.0" #:channel-metadata (quote (repository (version 0) (url "https://git.savannah.gnu.org/git/guix.git") (branch "master") (commit "1bc878ded2ea349384da6a72d4b8326c63c794b4") (name guix) (introduction (channel-introduction (version 0) (commit "9edb3f66fd807b096b48283debdcddccfea34bad") (signer "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA"))))) #:pull-version 1) #:system system)) derivation-file-name))))))

If I remember well, in the past I tried to update with a guix from guix
(obtained with "guix install guix") and also with one from git
("./pre-inst-env guix pull"), and the result was always the same.

So here is the sad outdated state:
$ guix describe
Generation 10	Aug 26 2022 15:29:35	(current)
  guix 35b176d
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 35b176daf1a466f136f0b77c03de78f482a30702

Andreas





Information forwarded to bug-guix <at> gnu.org:
bug#64302; Package guix. (Fri, 07 Jul 2023 14:10:02 GMT) Full text and rfc822 format available.

Message #8 received at 64302 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Andreas Enge <andreas <at> enge.fr>
Cc: 64302 <at> debbugs.gnu.org
Subject: Re: bug#64302: Guix derivation cannot be computed during pull
Date: Fri, 07 Jul 2023 16:09:13 +0200
Hello,

Andreas Enge <andreas <at> enge.fr> skribis:

> here is what happens on a server I do not manage to update for about a year now:
>
> $ guix pull
> Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
> Authenticating channel 'guix', commits 9edb3f6 to 1bc878d (1,055 new commits)...
> Building from this channel:
>   guix      https://git.savannah.gnu.org/git/guix.git	1bc878d
> substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
> substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
> substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
> substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
> substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
> substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
> building /gnu/store/a2zzynwqii5j84gg9zn2brkh0hiqrh6n-module-import.drv...
> building /gnu/store/s8bj7c9nd85ng871h4440w7jw6p0hxpq-module-import.drv...
> building /gnu/store/3m2pndmnxj91s80ad1kvjw7kjsgpf733-module-import-compiled.drv...
> building /gnu/store/fg3r0s0r1sbljjdvgsnjkkziskn3fagp-module-import-compiled.drv...
> building /gnu/store/a2lgmyr95d3nr0snp31662rygf5g7cz7-compute-guix-derivation.drv...
> Computing Guix derivation for 'x86_64-linux'... /guix pull: error: You found a bug: the program '/gnu/store/wvni7k3g4wnf0k782zgfv4gya9bnw8gg-compute-guix-derivation'
> failed to compute the derivation for Guix (version: "1bc878ded2ea349384da6a72d4b8326c63c794b4"; system: "x86_64-linux";
> host version: "35b176daf1a466f136f0b77c03de78f482a30702"; pull-version: 1).
> Please report the COMPLETE output above by email to <bug-guix <at> gnu.org>.

Weird.  I tried the same time travel and it went well:

--8<---------------cut here---------------start------------->8---
$ guix time-machine --commit=35b176daf1a466f136f0b77c03de78f482a30702 -- time-machine -- describe
Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
[…]
building /gnu/store/pa38h9kqq05s77k0vq62amc99sv3xm2g-config.scm.drv...
building /gnu/store/ywbkw3m7dbk5g071v746p2q23v0x9ib0-git.scm.drv...
building /gnu/store/k4kidxvjp5bghrjk8n9y1n4k52lwrcmh-hash.scm.drv...
building /gnu/store/a2zzynwqii5j84gg9zn2brkh0hiqrh6n-module-import.drv...
building /gnu/store/s8bj7c9nd85ng871h4440w7jw6p0hxpq-module-import.drv...
building /gnu/store/3m2pndmnxj91s80ad1kvjw7kjsgpf733-module-import-compiled.drv...
building /gnu/store/fg3r0s0r1sbljjdvgsnjkkziskn3fagp-module-import-compiled.drv...
building /gnu/store/4kg185vfqw5c33kr5d35gzqyn6i1pjn7-compute-guix-derivation.drv...
Computing Guix derivation for 'x86_64-linux'... /
substitute: updating substitutes from 'http://192.168.1.48:8123'... 100.0%
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://guix.bordeaux.inria.fr'... 100.0%
The following derivations will be built:
  /gnu/store/cgi7c05l797glr7siqwv02b83q7wyw9w-profile.drv
  /gnu/store/3pvbhrpp7vab9fm1x3pjwx4w6g5wx5w0-guix-849f31d57.drv
  /gnu/store/3mjlbc8g0lhv933yzdbsk813vv87pbf2-guix-daemon.drv
  /gnu/store/4bxlkz3nmvx7hgrfk6p1y9pvvkb23xw6-guix-command.drv
  /gnu/store/9n6mkg3xnlxx3i7gycf8azmwksh6vixl-guix-module-union.drv
  /gnu/store/p4jg8ci223h5wrqc5iy2ncl77vq3lsk5-guix-849f31d57-modules.drv
  /gnu/store/r8x4lb04j0w8ysvz83kxhcxdj1gzf66p-guix-config-modules.drv
  /gnu/store/41y56mzckgfwki39b0x7d32dzi59j9gj-guix-config.drv
  /gnu/store/k394a79aq2v11yj6f88z5r6cq1b4f2zh-guix-config-source.drv
  /gnu/store/9ns9frgaxy21nmhml1ixmbkymbl36xx4-config.scm.drv
  /gnu/store/al2fpclasimp7wsgph2v51my9ckn9far-inferior-script.scm.drv
  /gnu/store/k0581jd5ss6207p2q99mn2yhsh2y0czj-profile.drv
[…]
building /gnu/store/3pvbhrpp7vab9fm1x3pjwx4w6g5wx5w0-guix-849f31d57.drv...
building CA certificate bundle...
listing Emacs sub-directories...
building fonts directory...
building directory of Info manuals...
building profile with 1 package...
building /gnu/store/al2fpclasimp7wsgph2v51my9ckn9far-inferior-script.scm.drv...
building package cache...
building profile with 1 package...
  guix 849f31d
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 849f31d5746f5633f9f2a768b76739afc257ae99
--8<---------------cut here---------------end--------------->8---

Is it reproducible for you?  Could it be a transient failure?

Annoying there aren’t more details in the output.

Thanks,
Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#64302; Package guix. (Fri, 07 Jul 2023 14:46:02 GMT) Full text and rfc822 format available.

Message #11 received at 64302 <at> debbugs.gnu.org (full text, mbox):

From: Andreas Enge <andreas <at> enge.fr>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 64302 <at> debbugs.gnu.org
Subject: Re: bug#64302: Guix derivation cannot be computed during pull
Date: Fri, 7 Jul 2023 16:45:30 +0200
Am Fri, Jul 07, 2023 at 04:09:13PM +0200 schrieb Ludovic Courtès:
> Is it reproducible for you?  Could it be a transient failure?

It is not transient, it happens consistently.
Can I do anything myself to trick it into working?

Andreas





Information forwarded to bug-guix <at> gnu.org:
bug#64302; Package guix. (Mon, 10 Jul 2023 21:39:01 GMT) Full text and rfc822 format available.

Message #14 received at 64302 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Andreas Enge <andreas <at> enge.fr>
Cc: 64302 <at> debbugs.gnu.org
Subject: Re: bug#64302: Guix derivation cannot be computed during pull
Date: Mon, 10 Jul 2023 23:38:47 +0200
Hi,

Andreas Enge <andreas <at> enge.fr> skribis:

> Am Fri, Jul 07, 2023 at 04:09:13PM +0200 schrieb Ludovic Courtès:
>> Is it reproducible for you?  Could it be a transient failure?
>
> It is not transient, it happens consistently.
> Can I do anything myself to trick it into working?

Is there any more data you can grab?  Perhaps in
/var/log/guix-daemon.log or similar if that’s on a foreign distro?

And as a last resort, ‘strace -f -o /tmp/log -s 500 guix pull’, so we
can get an idea of what happens.

TIA!

Ludo’.




Merged 64302 64489. Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Mon, 10 Jul 2023 22:34:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#64302; Package guix. (Wed, 19 Jul 2023 10:09:01 GMT) Full text and rfc822 format available.

Message #19 received at 64302 <at> debbugs.gnu.org (full text, mbox):

From: Andreas Enge <andreas <at> enge.fr>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 64302 <at> debbugs.gnu.org
Subject: Re: bug#64302: Guix derivation cannot be computed during pull
Date: Wed, 19 Jul 2023 12:08:02 +0200
Hello,

Am Mon, Jul 10, 2023 at 11:38:47PM +0200 schrieb Ludovic Courtès:
> Is there any more data you can grab?  Perhaps in
> /var/log/guix-daemon.log or similar if that’s on a foreign distro?

it is a GNU system virtual machine. And I have this in /var/log/messages:

Jul 19 11:57:51 localhost vmunix: [4619013.095327] oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/,task=69h614ii57kpgn5,pid=16408,uid=1000
Jul 19 11:57:51 localhost vmunix: [4619013.095350] Out of memory: Killed process 16408 (69h614ii57kpgn5) total-vm:540000kB, anon-rss:433096kB, file-rss:0kB, shmem-rss:0kB, UID:1000 pgtables:952kB oom_score_adj:0

> And as a last resort, ‘strace -f -o /tmp/log -s 500 guix pull’, so we
> can get an idea of what happens.

While this appears in the strace log:

16408 +++ killed by SIGKILL +++

So we have the culprit; not a Guix bug per se.

$ cat /proc/meminfo 
MemTotal:         997864 kB
MemFree:          679044 kB
MemAvailable:     817052 kB

It looks like 1GB of memory is not enough for "guix pull", which is
not nice. Has this been addressed in later commits? Is there a known
lower memory limit for using Guix?

Andreas





Information forwarded to bug-guix <at> gnu.org:
bug#64302; Package guix. (Fri, 18 Aug 2023 13:34:02 GMT) Full text and rfc822 format available.

Message #22 received at 64302 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Andreas Enge <andreas <at> enge.fr>
Cc: 64302 <at> debbugs.gnu.org
Subject: Re: bug#64302: Guix derivation cannot be computed during pull
Date: Fri, 18 Aug 2023 15:33:43 +0200
Hi,

Andreas Enge <andreas <at> enge.fr> skribis:

> It looks like 1GB of memory is not enough for "guix pull", which is
> not nice. Has this been addressed in later commits? Is there a known
> lower memory limit for using Guix?

This is terrible.  :-/

The culprit here is Guile, specifically its compiler and psyntax.  I
made some improvements to reduce its memory consumption in 3.0, but it’s
definitely not 2x or so unfortunately.  So, to be continued…

Ludo’.




This bug report was last modified 1 year and 299 days ago.

Previous Next


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