all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Ludovic Courtès" <ludo@gnu.org>
To: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Cc: 43518@debbugs.gnu.org
Subject: bug#43518: Guix substitute crash in procedure raise-exception: wrong type agument in position 1: #f
Date: Wed, 30 Sep 2020 19:19:34 +0200	[thread overview]
Message-ID: <87wo0bxjvd.fsf@gnu.org> (raw)
In-Reply-To: <873630plg1.fsf@gmail.com> (Maxim Cournoyer's message of "Tue, 29 Sep 2020 13:00:30 -0400")

Hi,

Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:

> downloading from https://ci.guix.gnu.org/nar/6m9zimmw8p6gbc1yfbg454c1r587b7h4-gcc-10.2.0.tar.xz ...
[…]
>  gcc-10.2.0.tar.xz  74.3MiB                                     1.1MiB/s 00:25 [#######           ]  39.1%Backtrace:
[…]
> In unknown file:
>            5 (display "@ substituter-succeeded /gnu/store/r06j3ms57z4mzfpdzfclsi3i9hr4184g-module-imp…" …)
> In guix/status.scm:
>    699:16  4 (write! _ _ _)
>     613:6  3 (_ (download-progress "/gnu/store/6m9zimmw8p6gbc1yfbg454c1r587b7h4-gcc-10.2.0.tar.xz" # …) …)
> In guix/progress.scm:
>    213:14  2 (display-download-progress "6m9zimmw8p6gbc1yfbg454c1r58@" _ #:start-time _ #:transferred _ …)
> In ice-9/boot-9.scm:
>   1669:16  1 (raise-exception _ #:continuable? _)
>   1669:16  0 (raise-exception _ #:continuable? _)
>
> ice-9/boot-9.scm:1669:16: In procedure raise-exception:
> In procedure =: Wrong type argument in position 1: #f

If you have a case that’s reproducible, please take advantage of it and
add ‘pk’ calls in (guix progress) to see what happens.  Here it seems
that ‘transferred’ (in ‘display-download-progress’) is #f.

The #f would come from this clause in (guix status):

     ('download-progress item uri
                         (= string->number size)
                         (= string->number transferred))  ;<- here

That in turn comes from ‘progress-reporter/trace’, called from (guix
scripts substitute).

It looks like this issue happens when max-jobs is (noticeably) greater
than 1, as if the client was receiving intermingled “@
download-progress” traces, and thus not getting the right ‘transferred’
value.

Could you try to reproduce it while ‘guix’ is running under strace?
Like:

  strace -o log -s 200 guix build whatever --max-jobs=20

?

Then, if you reproduce the error, we’ll look for intermingled traces in
the log.

Thanks,
Ludo’.




  reply	other threads:[~2020-09-30 17:22 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-19 17:36 bug#43518: Guix substitute crash in procedure raise-exception: wrong type agument in position 1: #f Maxim Cournoyer
2020-09-29 17:00 ` Maxim Cournoyer
2020-09-30 17:19   ` Ludovic Courtès [this message]
2020-10-02 17:50     ` Maxim Cournoyer
2020-10-03  9:37       ` Ludovic Courtès
2020-10-04  3:19         ` Maxim Cournoyer
2020-10-04 11:53           ` Maxim Cournoyer
2020-12-01 17:23             ` Maxim Cournoyer
2021-01-19  3:43               ` Maxim Cournoyer

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=87wo0bxjvd.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=43518@debbugs.gnu.org \
    --cc=maxim.cournoyer@gmail.com \
    /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.