guix download file:// fails with a ~2 GB file on i686

  • Open
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Mark H Weaver
Owner
unassigned
Submitted by
Mark H Weaver
Severity
normal
Merged with
M
M
Mark H Weaver wrote on 22 Jul 2016 19:19
(address . bug-guix@gnu.org)
87h9bhmvz3.fsf@netris.org
On my i686 GuixSD machine, the following command consistently fails:

mhw@jojen:~$ guix download file:///home/mhw/texlive-20160523b-texmf.tar.xz
guix download: error: sendfile: Broken pipe

The file is 2071190200 bytes, which is about 73 MiB less than 2 GiB.
I have 2 GiB of RAM and 4 GiB of swap.

My guix client is v0.10.0-1899-g0f971a0. My guix-daemon is 0.10.0.

Mark
L
L
Ludovic Courtès wrote on 24 Jul 2016 16:03
control message for bug #24053
(address . control@debbugs.gnu.org)
87oa5ncevv.fsf@gnu.org
merge 24053 23666
M
M
Mark H Weaver wrote on 30 Jul 2016 06:18
Re: bug#24053: guix download file:// fails with a ~2 GB file on i686
(address . 24053@debbugs.gnu.org)
87popvlpx9.fsf@netris.org
Mark H Weaver <mhw@netris.org> writes:

Toggle quote (10 lines)
> On my i686 GuixSD machine, the following command consistently fails:
>
> mhw@jojen:~$ guix download file:///home/mhw/texlive-20160523b-texmf.tar.xz
> guix download: error: sendfile: Broken pipe
>
> The file is 2071190200 bytes, which is about 73 MiB less than 2 GiB.
> I have 2 GiB of RAM and 4 GiB of swap.
>
> My guix client is v0.10.0-1899-g0f971a0. My guix-daemon is 0.10.0.

I tried adding the same file using 'add-to-store' directly from the
REPL. 'guile' exited with status code 141, without printing an error
message:

Toggle snippet (18 lines)
mhw@jojen:~$ guix/pre-inst-env guile
GNU Guile 2.0.11
Copyright (C) 1995-2014 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guile-user)> ,use (guix)
scheme@(guile-user)> (define s (open-connection))
scheme@(guile-user)> (add-to-store s "texlive-20160523b-texmf.tar.xz" #f "sha256" "texlive-20160523b-texmf.tar.xz")
mhw@jojen:~$ echo $?
141
mhw@jojen:~$ ls -l texlive-20160523b-texmf.tar.xz
-rw-r--r-- 1 mhw mhw 2071190200 Jul 20 01:08 texlive-20160523b-texmf.tar.xz

Mark
L
L
Ludovic Courtès wrote on 30 Jul 2016 15:14
(name . Mark H Weaver)(address . mhw@netris.org)(address . 24053@debbugs.gnu.org)
87ziozcloz.fsf@gnu.org
Mark H Weaver <mhw@netris.org> skribis:

Toggle quote (6 lines)
> scheme@(guile-user)> ,use (guix)
> scheme@(guile-user)> (define s (open-connection))
> scheme@(guile-user)> (add-to-store s "texlive-20160523b-texmf.tar.xz" #f "sha256" "texlive-20160523b-texmf.tar.xz")
> mhw@jojen:~$ echo $?
> 141

(status:term-sig 141) = 13 (SIGPIPE), which makes sense: the daemon’s
child process at the other end received SIGKILL due to an OOM condition.

We don’t see that from the CLI because commands ignore SIGPIPE (see
‘initialize-guix’ in (guix ui)).

Ludo’.
?