Subject: bug#55639: time-machine back in 2020: weird error

From: zimoun <[email-masked]>
Date: Wed, 01 Jun 2022 16:04:49 +0200

Hi Ludo,

On mer., 01 juin 2022 at 11:44, Ludovic Courtès <[email-masked]> wrote:

> I don’t think it has anything to do with that.  Seems more like a
> problem in our code that would only manifest under special
> circumstances—we just need to find out what makes them special.  :-)

[...]

> That looks like <https://issues.guix.gnu.org/53594>.  I don’t have a
> good hypothesis for that yet, but I’m guessing it’s stateful: the bug
> manifests if some things are missing from the store.

Another data point.  Recompile a7b20226b2 using recent Guile.

--8<---------------cut here---------------start------------->8---
$ guix describe
Generation 3	mai 10 2022 22:44:08	(current)
  guix 9d795fb
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 9d795fb8fd3feffe584462cdfe3869acee64d226
$ git log --oneline -1
a7b20226b2 (HEAD -> old-a7b20226b2) gnu: python-libmpsse: Update to 1.4.1.

$ guix shell -D guix --container
[env]$ ./bootstrap && ./configure --localstatedir=/var && make scripts/guix make-go -j32
[env]$ exit
exit

$ guix shell -D guix --pure
[env]$ ./pre-inst-env guix describe
Git checkout:
  repository: /home/simon/src/guix/guix
  branch: old-a7b20226b2
  commit: a7b20226b2bf1a73b8f0f6536e7fa43326f35e33
[env]$ ./pre-inst-env guix build hello
/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10
--8<---------------cut here---------------end--------------->8---

> Could you try:
>
>   guix time-machine --commit=a7b20226b2 -- build hello --no-grafts
>
> If it works, does the same command without ‘--no-grafts’ work
> afterwards?

It does not work when using no-grafts.  However, a big ’guix gc’ makes
it work.  It is really weird.  Note that the previous pre-inst-env is
done before GC.

Well, I have not been enough attentive to correctly save the problematic
part.  Now, I am unable to reproduce. )-:

It is hard to know what had been initially substituted and what had been
locally recompiled.  I mean, today and after GC, it looks like,

--8<---------------cut here---------------start------------->8---
0,4 MB will be downloaded
 module-import-compiled  99KiB        597KiB/s 00:00 [##################] 100.0%
 libfontenc-1.1.4  13KiB              2.3MiB/s 00:00 [##################] 100.0%
 module-import-compiled  56KiB        601KiB/s 00:00 [##################] 100.0%
 mkfontscale-1.2.1  20KiB             3.7MiB/s 00:00 [##################] 100.0%
 module-import-compiled  116KiB       860KiB/s 00:00 [##################] 100.0%
 mkfontdir-1.0.7  4KiB                3.3MiB/s 00:00 [##################] 100.0%
 module-import-compiled  9KiB         2.9MiB/s 00:00 [##################] 100.0%
 module-import-compiled  56KiB        853KiB/s 00:00 [##################] 100.0%
 module-import-compiled  46KiB        1.1MiB/s 00:00 [##################] 100.0%
building /gnu/store/splvvik624s9nyxysz6b1970pq5hy4gp-config.scm.drv...
building /gnu/store/w3229vmzf5620pkcn785xfw1ahl3jhri-config.scm.drv...
building /gnu/store/lhrdcca79hjjnmhz25bgzmg1a9hc3j7i-guix-config-source.drv...
building /gnu/store/i63lwisk345si6552rwyry3pfaa6wqij-guix-core-source.drv...
building /gnu/store/hsskiqmzd6822jxqday78kqabi0m3dj6-guix-config.drv...
building /gnu/store/dhxdn4wc1rdw13cmy8b20qc23vgvirvc-guix-core.drv...
[...]
--8<---------------cut here---------------end--------------->8---

all these derivations are locally built and I do not know what happened
a couple of days ago.  If these had been substituted and if the
substitutes had something incompatible with my hardware for whatever
reason, then weird behaviour.  Hum, too many if. :-)

Cheers,
simon