Subject: bug#39993: closed (Re: bug#39993: Guix report hash mismatch when underlying cause is ENOSPC)

From: [email-masked] (GNU bug Tracking System)
Date: Sat, 21 Mar 2020 23:04:02 +0000

Your bug report

#39993: Guix report hash mismatch when underlying cause is ENOSPC

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
39993: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39993
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#39993: Guix report hash mismatch when underlying cause is ENOSPC
From: Ludovic Courtès <[email-masked]>
To: Maxim Cournoyer <[email-masked]>
Cc: [email-masked]
Date: Sun, 22 Mar 2020 00:03:07 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

Ludovic Courtès <[email-masked]> skribis:

> Maxim Cournoyer <[email-masked]> skribis:
>
>> Guix should correctly report that it ran out of space instead of falsely
>> mentioning hash mismatches and attempting alternative download sources,
>> as demonstrated by the Guix output below:
>>
>> Session:
>>
>> building /gnu/store/dqzq8hbk8gqx5lhmnxsl5vl0c6s3i0a2-tcpdump-4.9.3.tar.gz.drv...
>> downloading from https://www.tcpdump.org/release/tcpdump-4.9.3.tar.gz...
>
> Could you post the log returned by ‘guix build --log-file
> /gnu/store/dqzq8hbk8gqx5lhmnxsl5vl0c6s3i0a2-tcpdump-4.9.3.tar.gz.drv’?

I was able to reproduce it with a hack and that gives:

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix build -S tcpdump --check 
accepted connection from pid 32022, user ludo
The following derivation will be built:
   /gnu/store/3y4zkzpkx799cvph0qi8kvkh26l8kfww-tcpdump-4.9.3.tar.gz.drv
building /gnu/store/3y4zkzpkx799cvph0qi8kvkh26l8kfww-tcpdump-4.9.3.tar.gz.drv...

Starting download of /gnu/store/124q26gkdyls859sblabz3f60grfvvdl-tcpdump-4.9.3.tar.gz
>From https://www.tcpdump.org/release/tcpdump-4.9.3.tar.gz...
In procedure fport_write: Ne haviĝas plu da spaco sur aparato

Starting download of /gnu/store/124q26gkdyls859sblabz3f60grfvvdl-tcpdump-4.9.3.tar.gz
>From https://ci.guix.gnu.org/file/tcpdump-4.9.3.tar.gz/sha256/0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c...
In procedure fport_write: Ne haviĝas plu da spaco sur aparato

Starting download of /gnu/store/124q26gkdyls859sblabz3f60grfvvdl-tcpdump-4.9.3.tar.gz
>From https://tarballs.nixos.org/sha256/0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c...
following redirection to `https://tarballs.nixos.org/sha512/3aec673f78b996a4df884b1240e5d0a26a2ca81ee7aca8a2e6d50255bb53476e008a5ced4409e278a956710d8a4d31d85bbb800c9f1aab92b0b1046b59292a22'...
In procedure fport_write: Ne haviĝas plu da spaco sur aparato

Starting download of /gnu/store/124q26gkdyls859sblabz3f60grfvvdl-tcpdump-4.9.3.tar.gz
>From https://archive.softwareheritage.org/api/1/content/sha256:2cd47cb3d460b6ff75f4a9940f594317ad456cfbf2bd2c8e5151e16559db6410/raw/...
In procedure fport_write: Ne haviĝas plu da spaco sur aparato
failed to download "/gnu/store/124q26gkdyls859sblabz3f60grfvvdl-tcpdump-4.9.3.tar.gz" from "https://www.tcpdump.org/release/tcpdump-4.9.3.tar.gz"
warning: rewriting hashes in `/gnu/store/mv33j0si1n75q9kdimhvyrjn05pbxz5b-tcpdump-4.9.3.tar.gz'; cross fingers
sha256 hash mismatch for /gnu/store/mv33j0si1n75q9kdimhvyrjn05pbxz5b-tcpdump-4.9.3.tar.gz:
  expected hash: 0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c
  actual hash:   0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73
hash mismatch for store item '/gnu/store/mv33j0si1n75q9kdimhvyrjn05pbxz5b-tcpdump-4.9.3.tar.gz'
--8<---------------cut here---------------end--------------->8---

> The root cause is that ‘false-if-exception*’ as used in (guix build
> download) is too coarse-grain.

I came up with a fix in 4a6ec23a9780bd75a7e527bd0dfb1943347869bb.

Thanks,
Ludo’.

Subject: Guix report hash mismatch when underlying cause is ENOSPC
From: Maxim Cournoyer <[email-masked]>
To: bug-guix <[email-masked]>
Date: Sun, 08 Mar 2020 22:03:19 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Guix should correctly report that it ran out of space instead of falsely
mentioning hash mismatches and attempting alternative download sources,
as demonstrated by the Guix output below:

Session:

building /gnu/store/dqzq8hbk8gqx5lhmnxsl5vl0c6s3i0a2-tcpdump-4.9.3.tar.gz.drv...
downloading from https://www.tcpdump.org/release/tcpdump-4.9.3.tar.gz...
downloading from https://ci.guix.gnu.org/file/tcpdump-4.9.3.tar.gz/sha256/0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c...
downloading from https://tarballs.nixos.org/sha256/0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c...
downloading from https://archive.softwareheritage.org/api/1/content/sha256:2cd47cb3d460b6ff75f4a9940f594317ad456cfbf2bd2c8e5151e16559db6410/raw/...
/sha256 hash mismatch for /gnu/store/mv33j0si1n75q9kdimhvyrjn05pbxz5b-tcpdump-4.9.3.tar.gz:
  expected hash: 0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c
  actual hash:   0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73
hash mismatch for store item '/gnu/store/mv33j0si1n75q9kdimhvyrjn05pbxz5b-tcpdump-4.9.3.tar.gz'
build of /gnu/store/dqzq8hbk8gqx5lhmnxsl5vl0c6s3i0a2-tcpdump-4.9.3.tar.gz.drv failed
View build log at '/var/log/guix/drvs/dq/zq8hbk8gqx5lhmnxsl5vl0c6s3i0a2-tcpdump-4.9.3.tar.gz.drv.bz2'.
cannot build derivation `/gnu/store/47d55bgd42rcnszhxjg5cbjcdskxih1x-tcpdump-4.9.3.drv': 1 dependencies couldn't be built
guix package: error: build of `/gnu/store/47d55bgd42rcnszhxjg5cbjcdskxih1x-tcpdump-4.9.3.drv' failed

I then quickly realized my system had ran out of space when I next
tried:

--8<---------------cut here---------------start------------->8---
maxim@apteryx ~/src/guix [env]$ wget https://tarballs.nixos.org/sha256/0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c
--2020-03-08 21:52:11--  https://tarballs.nixos.org/sha256/0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c
Resolving tarballs.nixos.org (tarballs.nixos.org)... 13.225.198.24, 13.225.198.66, 13.225.198.85, ...
Connecting to tarballs.nixos.org (tarballs.nixos.org)|13.225.198.24|:443... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: /sha512/3aec673f78b996a4df884b1240e5d0a26a2ca81ee7aca8a2e6d50255bb53476e008a5ced4409e278a956710d8a4d31d85bbb800c9f1aab92b0b1046b59292a22 [following]
--2020-03-08 21:52:11--  https://tarballs.nixos.org/sha512/3aec673f78b996a4df884b1240e5d0a26a2ca81ee7aca8a2e6d50255bb53476e008a5ced4409e278a956710d8a4d31d85bbb800c9f1aab92b0b1046b59292a22
Reusing existing connection to tarballs.nixos.org:443.
HTTP request sent, awaiting response... 200 OK
Length: 2333119 (2.2M) [binary/octet-stream]
Saving to: ‘0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c’

0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c   0%[                                                                                                                       ]       0  --.-KB/s    in 0s      

Cannot write to ‘0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c’ (No space left on device).
--8<---------------cut here---------------end--------------->8---

Maxim