Subject: Re: bug#41362: error when running guix pull on i686-linux

From: Ludovic Courtès <[email-masked]>
Date: Fri, 29 May 2020 18:02:49 +0200

Hi,

Mayeul Cantan <[email-masked]> skribis:

> After checking that 9d0b9c7c6c0b0d45653dea80b499314ea415d3c7 (just
> after the one I was on) worked all right, I tried a second bissect,
> that found 10c413685f13af12fa2bb34796db82e1f52b47af as a possible
> cause. After reverting just 10c41 failed, I also reverted 694e10 on
> top of that. I thought it had worked as it kept building, but it
> failed after a while (slightly different log: gi046...). During that
> build phase, a lot of these "unbound variable  \x0" kept being printed
> to stdout, but I have a limited scrollback and forgot to tee it to a
> file beforehand. I could still obtain it if it was necessary.

The module-imported-compiled build log you provided shows this:

--8<---------------cut here---------------start------------->8---
[ 1/84] Loading './gcrypt/hash.scm'...
[ 2/84] Loading './git.scm'...
[ 3/84] Loading './gnu/packages/bootstrap.scm'...
Backtrace:
          19 (primitive-load-path "gnu/packages" #<procedure 840a8a0?>)
In ice-9/eval.scm:
   721:20 18 (primitive-eval _)
In ice-9/psyntax.scm:
  1262:36 17 (expand-top-sequence _ _ _ #f _ _ _)
  1209:24 16 (parse _ (("placeholder" placeholder)) ((top) #(# # ?)) ?)
   285:10 15 (parse _ (("placeholder" placeholder)) (()) _ c&e (eval) ?)
In ice-9/eval.scm:
   293:34 14 (_ #<module (#{ g73}#) 81c5870>)
In ice-9/boot-9.scm:
   2874:4 13 (define-module* _ #:filename _ #:pure _ #:version _ # _ ?)
  2887:24 12 (_)
   222:29 11 (map1 _)
   222:17 10 (map1 (((guix ui)) ((guix utils)) ((guix discovery)) # ?))
  2800:17  9 (resolve-interface (guix ui) #:select _ #:hide _ # _ # _ ?)
In ice-9/threads.scm:
    390:8  8 (_ _)
In ice-9/boot-9.scm:
  2726:13  7 (_)
In ice-9/threads.scm:
    390:8  6 (_ _)
In ice-9/boot-9.scm:
  2994:20  5 (_)
   2312:4  4 (save-module-excursion _)
  3014:26  3 (_)
In unknown file:
           2 (primitive-load-path "guix/ui" #<procedure 8769de0 at i?>)
In ice-9/eval.scm:
   223:20  1 (proc #<module (#{ g268}#) 8871140>)
In unknown file:
           0 (%resolve-variable (7 . #) #<module (#{ g268}#) 8871140>)

ERROR: In procedure %resolve-variable:
Unbound variable: #{\x0;\x0;\x0;\x0;\x0; […]
--8<---------------cut here---------------end--------------->8---

This hints at a possible memory corruption issue in Guile, especially
since it seems to be non-deterministic.

That said, I successfully run:

  $ guix pull -s i686-linux -p /tmp/test
  […]
  $ /tmp/test/bin/guix describe
  Generacio 1     May 29 2020 18:00:54    (nuna)
    guix 9ff667e
      repository URL: https://git.savannah.gnu.org/git/guix.git
      branch: master
      commit: 9ff667ea05d0807b4e6512c92914ae517b9ec755

Most derivations were built locally.  It’s on an x86_64 laptop, though.

Is it still crashy for you?

Thanks,
Ludo’.