all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: mhw@netris.org
Cc: guix-devel@gnu.org
Subject: Re: Unable to add large (1.74 GB) file to store on i686
Date: Wed, 03 Sep 2014 09:47:53 +0200	[thread overview]
Message-ID: <87d2bdjgba.fsf@gnu.org> (raw)
In-Reply-To: <87r40117kj.fsf@netris.org> (mhw@netris.org's message of "Thu, 28 Aug 2014 01:55:56 -0400")

mhw@netris.org skribis:

> Finally I decided to use 'wget' to download it, so that I could resume
> partial transfers.  I have the entire file now, but all of my attempts
> to add it to the store fail.  "guix download file:///path/to/file"
> reports:
>
>   guix download: error: sendfile: Broken pipe

The ‘sendfile’ call is made by ‘add-to-store’ (in ‘write-file’), so that
would mean that the daemon process terminated or closed the connection
unexpectedly.

However, I can’t reproduce it on x86_64:

--8<---------------cut here---------------start------------->8---
$ dd if=/dev/zero of=/data/src/BIG-FILE bs=1024 count=1750000
1750000+0 records in
1750000+0 records out
1792000000 bytes (1.8 GB) copied, 6.23156 s, 288 MB/s

$ guix download file:///data/src/BIG-FILE 
/gnu/store/jlx8nayvk34ij1sxqbn9c8dsqgqb9346-BIG-FILE
1p884s2sa6n4aw813bpnn1mfqyk4grqhig4wmiybi22da0zrfdjb
--8<---------------cut here---------------end--------------->8---

Was it on a 32-bit platform?

> I also attempted to add it using 'add-to-store', which exited the
> process ungracefully without printing an error message:
>
> mhw:~/guix-core-updates$ ./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 %store (open-connection))
> scheme@(guile-user)> (add-to-store %store "texlive-20140525-texmf.tar.xz" #f "sha256" "/home/mhw/texlive-20140525-texmf.tar.xz")
> mhw:~/guix-core-updates$ echo $?
> 141

This is the same problem:

--8<---------------cut here---------------start------------->8---
scheme@(guile-user)> (status:term-sig 141)
$4 = 13
scheme@(guile-user)> SIGPIPE
$5 = 13
--8<---------------cut here---------------end--------------->8---

> Any ideas?

No. :-/

I would run guix-daemon in gdb or strace, and follow the child process
to exactly how it terminates.

> Does adding files to the store entail mapping them into memory?

No: it’s ‘sendfile’ on the client side, and ‘read’ on the daemon side.

Ludo’.

      reply	other threads:[~2014-09-03  7:48 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-28  5:55 Unable to add large (1.74 GB) file to store on i686 mhw
2014-09-03  7:47 ` Ludovic Courtès [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87d2bdjgba.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=guix-devel@gnu.org \
    --cc=mhw@netris.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.