unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: "Brantley, Michael" <Michael.Brantley@deshaw.com>
Cc: "help-guix@gnu.org" <help-guix@gnu.org>
Subject: Re: Problems with "guix offload test" after re-install
Date: Fri, 13 Oct 2017 17:41:26 +0200	[thread overview]
Message-ID: <877evzm4wp.fsf@gnu.org> (raw)
In-Reply-To: <326dea38f49a4fe895784597bbfc0a9c@mbxtoa2.winmail.deshaw.com> (Michael Brantley's message of "Thu, 12 Oct 2017 10:02:49 +0000")

Hi,

"Brantley, Michael" <Michael.Brantley@deshaw.com> skribis:

> ...
>
>>> scheme@(guile-user)> (begin
>
>>>                        (use-modules (guix))
>
>>>                        (with-store store
>
>>>                          (add-text-to-store store "test"
>
>>>                                             "Hello, build machine!")))
>
>>> ERROR: In procedure display:
>
>>> ERROR: In procedure display: Wrong type argument in position 2: #<closed: file c98f50>
>
>>>
>
>>> Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
>
>>> scheme@(guile-user) [1]>
>
>
>
>> Could you try “,bt” here to show the stack trace?  I wonder where that
>
>> exception comes from.
>
>
>
> Apologies that I didn’t include that before - the backtrace is shown below:
>
>
> scheme@(guile-user) [1]> ,bt
> In current input:
>     12:25  3 (_)
> In guix/store.scm:
>     864:9  2 (_ #<build-daemon 256.97 205be60> _ #vu8(72 101 108 # …) …)
>    618:13  1 (process-stderr _ _)
> In unknown file:
>            0 (display "acquiring global GC lock `/var/guix/gc.lock'…" …)
> scheme@(guile-user) [1]> ,q
> scheme@(guile-user)> ,q
> Connection closed by foreign host.

So guix-daemon on this machine is running with --debug or similar (hence
the “acquiring global GC lock” message), and when it tries to write its
error messages to (current-build-output-port) aka. (current-error-port),
it turns out that this port is closed.

I’m not sure why (current-error-port) is closed.

Does it help to terminate the “guile --listen” process?

>> Are you sure guix-daemon is running on this machine, and listening to
>
>> the right socket file?
>
>
>
> Yes, and this question along with the mention of “#<build-daemon” in the backtrace above was the clue I needed to find the source of the problem! I strace’d the guix-daemon, and comparing the successful and failing thread invocations (attached) I observed that the guix-daemon’s actions were identical right up until the point when it attempted to write to the calling guile instance (on file descriptor 4), and in the failing case was met with ECONNRESET at the end of what was otherwise a successful transaction. From this I guessed that the calling guile instance had closed the connection because it wasn’t able to grok the output being returned by the guix-daemon, and that made me remember that I had recently enabled the guix-daemon --debug flag. I then restarted the guix-daemon without the --debug flag, and “guix offload test” now works again!

Oh OK, so it does have something to do with --debug.

Thanks,
Ludo'.

      reply	other threads:[~2017-10-13 15:41 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-11 19:52 Problems with "guix offload test" after re-install Brantley, Michael
2017-10-12  8:05 ` Ludovic Courtès
2017-10-12 10:02   ` Brantley, Michael
2017-10-13 15:41     ` 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

  List information: https://guix.gnu.org/

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

  git send-email \
    --in-reply-to=877evzm4wp.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=Michael.Brantley@deshaw.com \
    --cc=help-guix@gnu.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).