Subject: (guix status) crashes with numerical-overflow
From: Maxim Cournoyer <[email-masked]>
To: bug-guix <[email-masked]>
Date: Mon, 10 Apr 2023 21:57:16 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello,

Probably pretty hard to reproduce (it's the first time I encounter it!),
but I got this crash while offloading:

--8<---------------cut here---------------start------------->8---
[...]
Found ninja-1.11.1 at /gnu/store/cv9lcp1dzh9n0b6jrlvlp5zrc0vgqy8d-ninja-1.11.1/bin/ninja
+ meson compile
ninja: no work to do.
INFO: autodetecting backend as ninja
INFO: calculating backend command to run: /gnu/store/cv9lcp1dzh9n0b6jrlvlp5zrc0vgqy8d-ninja-1.11.1/bin/ninja
+ meson install --destdir /tmp/guix-build-meson-python-0.8.1.drv-0/meson_python-0.8.1/tests/packages/configure-data/.mesonpy-o_wn_hs0/install
ninja: Entering directory `/tmp/guix-build-meson-python-0.8.1.drv-0/meson_python-0.8.1/tests/packages/configure-data/.mesonpy-o_wn_hs0/build'
ninja: no work to do.
Installing /tmp/guix-build-meson-python-0.8.1.drv-0/meson_python-0.8.1/tests/packages/configure-data/.mesonpy-o_wn_hs0/build/configure_data.py to /tmp/guix-build-meson-python-0.8.1.drv-0/meson_python-0.8.1/tests/packages/configure-data/.mesonpy-o_wn_hs0/install/gnu/store/i0d555a5fd7isi606aqqmbp5zgy9jh6p-python-3.10.7/lib/python3.10/site-packages
Copying files to wheel...
Backtrace:
In ice-9/boot-9.scm:
    724:2 19 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
In ice-9/eval.scm:
    619:8 18 (_ #(#(#<directory (guile-user) 7f6277c6fc80>)))
In guix/ui.scm:
   2300:7 17 (run-guix . _)
  2263:10 16 (run-guix-command _ . _)
In ice-9/boot-9.scm:
  1752:10 15 (with-exception-handler _ _ #:unwind? _ # _)
In guix/status.scm:
    830:4 14 (call-with-status-report _ _)
In ice-9/boot-9.scm:
  1752:10 13 (with-exception-handler _ _ #:unwind? _ # _)
In guix/store.scm:
   659:37 12 (thunk)
   1298:8 11 (call-with-build-handler _ _)
   1298:8 10 (call-with-build-handler #<procedure 7f6275920750 at g…> …)
In guix/scripts/build.scm:
   802:27  9 (_)
In guix/store.scm:
  1417:15  8 (_ #<store-connection 256.99 7f6277c05dc0> _ _)
   737:14  7 (process-stderr _ _)
In unknown file:
           6 (display "@ build-log 9251 316\n-0.8.1/tests/packages/…" …)
In guix/status.scm:
   770:20  5 (write! _ _ _)
In srfi/srfi-1.scm:
   460:18  4 (fold #<procedure 7f6277ce81c0 at guix/status.scm:659:…> …)
In guix/status.scm:
   660:15  3 (_ (build-log 9251 "[0/0] ") #<<build-status> building:…>)
   195:29  2 (update-build #<<build-status> building: (#<<build> de…> …)
In ice-9/boot-9.scm:
  1685:16  1 (raise-exception _ #:continuable? _)
  1685:16  0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Throw to key `numerical-overflow' with args `("divide" "Numerical overflow" #f #f)'.
--8<---------------cut here---------------end--------------->8---

System was under low load, running the following guix-daemon:

--8<---------------cut here---------------start------------->8---
$ pgrep -a guix-daemon
18179 /gnu/store/348sm24vgqnfbzhnglpczjh04jwiv6aj-guix-1.4.0-4.01fd830/bin/guix-daemon --build-users-group guixbuild --max-silent-time 0 --timeout 0 --log-compression none --discover=yes --substitute-urls https://ci.guix.gnu.org https://bordeaux.guix.gnu.org --max-jobs=20
20103 /gnu/store/348sm24vgqnfbzhnglpczjh04jwiv6aj-guix-1.4.0-4.01fd830/bin/guix-daemon 18185               guixbuild --max-silent-time 0 --timeout 0 --log-compression none --discover=yes --substitute-urls https://ci.guix.gnu.org https://bordeaux.guix.gnu.org --max-jobs=20
--8<---------------cut here---------------end--------------->8---

Which should be provided by 'guix system reconfigure' at Guix commit
d00f1075077e55a3c2c750b3dd41be2a09eff530 on the offload machine.  The
local machine runs the same one, with similar options:

--8<---------------cut here---------------start------------->8---
$ pgrep -a guix-daemon
353 /gnu/store/348sm24vgqnfbzhnglpczjh04jwiv6aj-guix-1.4.0-4.01fd830/bin/guix-daemon --build-users-group guixbuild --max-silent-time 0 --timeout 0 --log-compression none --discover=yes --substitute-urls http://127.0.0.1:8181 https://ci.guix.gnu.org https://bordeaux.guix.gnu.org --max-jobs=4
558 /gnu/store/348sm24vgqnfbzhnglpczjh04jwiv6aj-guix-1.4.0-4.01fd830/bin/guix-daemon 514                 guixbuild --max-silent-time 0 --timeout 0 --log-compression none --discover=yes --substitute-urls http://127.0.0.1:8181 https://ci.guix.gnu.org https://bordeaux.guix.gnu.org --max-jobs=4
--8<---------------cut here---------------end--------------->8---

-- 
Thanks,
Maxim