GNU bug report logs - #51400
--check, --rounds and --keep-failed used together produce empty store items

Previous Next

Package: guix;

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

Date: Tue, 26 Oct 2021 02:19:01 UTC

Severity: important

To reply to this bug, email your comments to 51400 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#51400; Package guix. (Tue, 26 Oct 2021 02:19:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Maxim Cournoyer <maxim.cournoyer <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Tue, 26 Oct 2021 02:19:01 GMT) Full text and rfc822 format available.

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

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: bug-guix <bug-guix <at> gnu.org>
Subject: --check, --rounds and --keep-failed used together produce empty
 store items
Date: Mon, 25 Oct 2021 22:18:16 -0400
Hello,

While debugging while guix substitution would fail with a "corrupt input
while restoring ..."  error message, I saw in the guix-substitute strace
output that it was attempting to substitute a nonexistent store item.

I then narrowed the production of such broken store item to using the
following guix build options together:

--8<---------------cut here---------------start------------->8---
$ guix build hello --check --rounds=2 --keep-failed
[...]
successfully built /gnu/store/260bk0ch4np4h2yz5yqhf8hjbsyhwpmr-hello-2.10.drv
successfully built /gnu/store/260bk0ch4np4h2yz5yqhf8hjbsyhwpmr-hello-2.10.drv
/gnu/store/81bdcd5x4v50i28h98bfkvvkx9cky63w-hello-2.10

stat /gnu/store/81bdcd5x4v50i28h98bfkvvkx9cky63w-hello-2.10
stat: cannot statx '/gnu/store/81bdcd5x4v50i28h98bfkvvkx9cky63w-hello-2.10': No such file or directory
--8<---------------cut here---------------end--------------->8---

That's bad, especially since a subsequent 'guix build hello' doesn't fix
it (it keeps the corrupted cached item, even with --check!).

One needs to run

$ guix gc -D /gnu/store/81bdcd5x4v50i28h98bfkvvkx9cky63w-hello-2.10
$ guix build hello

to recover :-/.

This bug was probably exposed via
0fa0e8df60b0b005a8d9499562464c5a66218a5b, which enabled using --check
along with --rounds.

Thanks,

Maxim




Severity set to 'important' from 'normal' Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Fri, 19 Nov 2021 14:49:02 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 209 days ago.

Previous Next


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