While downloading substitutes: Wrong type argument in position 1 (expecting struct): #f

  • Open
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Maxim Cournoyer
Owner
unassigned
Submitted by
Maxim Cournoyer
Severity
important
M
M
Maxim Cournoyer wrote on 4 Aug 2021 04:44
(name . bug-guix)(address . bug-guix@gnu.org)
87a6ly7wt1.fsf@gmail.com
Hello,

This occurred while trying to build an updated fontconfig on the
core-updates branch:

Toggle snippet (65 lines)
successfully built /gnu/store/dh7wr4laxg5r8x22iv2ydbh8krcm6782-libuninameslist-20200313.drv
The following builds are still in progress:
/gnu/store/mzw4s9y67cp9i1mylqkiyrpxpyaq5f7s-libnftnl-1.2.0.drv
/gnu/store/vn2pgkxz1lhvdmzv63crlxvz913v9q3i-libungif-4.1.4.drv
/gnu/store/yjq9xi300kwpcdca9b38r0fjmvl8q95c-m4-1.4.18.tar.xz.drv
/gnu/store/5wg445g4y00jwxvga7rk4fk4vmv6hl8d-lzo-2.10.drv
/gnu/store/hicph1jxczzacyy3xc4wqbjfqdskxwnn-libxml2-2.9.12.tar.xz.drv
/gnu/store/gda40q0dd10hr0fm4sffzgc9zv24mb0s-libxml2-2.9.12.tar.xz.drv
/gnu/store/8ir67jqrzwz62s522xi19xlq0yik417f-libtasn1-4.17.0.drv
/gnu/store/mr9639s4z2fsvcwmw8mw17j9b5f6l4gh-lxml-4.6.3.tar.xz.drv
/gnu/store/96qnk27khjc25rbdz2gxr22sqgmh4lq9-libxslt-1.1.34.tar.xz.drv
/gnu/store/jxvirmrqxhfp530vggm6bcgq8rs6ya6y-libtool-2.4.6.tar.xz.drv
/gnu/store/flmxhxmkj6vbpg6pgh57xp390bxwzqj7-guile-3.0.7.drv
/gnu/store/sl9k1cdgp1g6hk796sd1pra1w88vnybc-bash-minimal-5.1.8.drv
/gnu/store/a2zj0nybbs7ydgp30da8vxbgf3s9ndfv-docbook-xsl-1.79.2.tar.xz.drv
/gnu/store/8rc15lklpf7xyyr57a8mvl2ybvrj5h3q-c-ares-1.17.1.drv
/gnu/store/4s3kciwd65syrvk3ryvvyk3xydx43mw3-cairo-1.16.0.tar.xz.drv

substituting /gnu/store/yqvsc5brbzpk1m7zr8bnyr66kz9q625a-nasm-2.15.05.tar.xz...
substituting /gnu/store/4fliaxdz084ijlzb6d98sgg76dmz9xp6-net-tools-1.60-0.479bb4a.zip...
substituting /gnu/store/js6wj0pmd4lqnnkys7f9az4gcm8szfmi-nettle-3.7.3.tar.gz...
substituting /gnu/store/lz5qmr8bv3wwmja3vw59yjydiy66ni3a-nghttp2-1.44.0.tar.xz...
process 30234 acquired build slot '/var/guix/offload/127.0.0.1:6666/1'
normalized load on machine '127.0.0.1' is 0.17
building /gnu/store/9xadqmcq1z02x93k7c5xpwbwd4a7f1rk-apr-1.6.5.drv...
eckout 50269 50269
Backtrace:
19 (apply-smob/0 #<thunk 7fd0dfaedf60>)
In ice-9/boot-9.scm:
724:2 18 (call-with-prompt _ _ #<procedure default-prompt-handler (k proc)>)
In ice-9/eval.scm:
619:8 17 (_ #(#(#<directory (guile-user) 7fd0dfae7c80>)))
In guix/ui.scm:
2185:7 16 (run-guix . _)
2148:10 15 (run-guix-command _ . _)
In ice-9/boot-9.scm:
1752:10 14 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
In guix/status.scm:
800:4 13 (call-with-status-report _ _)
In ice-9/boot-9.scm:
1752:10 12 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
In guix/store.scm:
658:37 11 (thunk)
1320:8 10 (call-with-build-handler _ _)
1320:8 9 (call-with-build-handler #<procedure 7fd0dd3fdfc0 at guix/ui.scm:1155:2 (continue store …> …)
In guix/scripts/build.scm:
699:26 8 (_)
In guix/store.scm:
1388:15 7 (_ #<store-connection 256.99 7fd0dfa699b0> _ _)
759:13 6 (process-stderr _ _)
In unknown file:
5 (display "eckout 50269 50269\n@ download-succeeded /gnu/store/1i7b2hrywrp90w5dd9nq6dw788…" …)
In guix/status.scm:
723:16 4 (write! _ _ _)
636:15 3 (_ (download-succeeded "/gnu/store/1i7b2hrywrp90w5dd9nq6dw7888wzqkq-mallard-ducktype-…" …) …)
272:33 2 (compute-status _ #<<build-status> building: (#<<build> derivation: "/gnu/store/9xadqmcq…> …)
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:
In procedure struct-vtable: Wrong type argument in position 1 (expecting
struct): #f

Thanks,

Maxim
L
L
Ludovic Courtès wrote on 4 Aug 2021 10:26
control message for bug #49862
(address . control@debbugs.gnu.org)
87a6lxsji3.fsf@gnu.org
severity 49862 important
quit
L
L
Ludovic Courtès wrote on 4 Aug 2021 10:39
Re: bug#49862: While downloading substitutes: Wrong type argument in position 1 (expecting struct): #f
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 49862@debbugs.gnu.org)
871r79siw2.fsf@gnu.org
Hi Maxim,

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

Toggle quote (67 lines)
> This occurred while trying to build an updated fontconfig on the
> core-updates branch:
>
> successfully built /gnu/store/dh7wr4laxg5r8x22iv2ydbh8krcm6782-libuninameslist-20200313.drv
> The following builds are still in progress:
> /gnu/store/mzw4s9y67cp9i1mylqkiyrpxpyaq5f7s-libnftnl-1.2.0.drv
> /gnu/store/vn2pgkxz1lhvdmzv63crlxvz913v9q3i-libungif-4.1.4.drv
> /gnu/store/yjq9xi300kwpcdca9b38r0fjmvl8q95c-m4-1.4.18.tar.xz.drv
> /gnu/store/5wg445g4y00jwxvga7rk4fk4vmv6hl8d-lzo-2.10.drv
> /gnu/store/hicph1jxczzacyy3xc4wqbjfqdskxwnn-libxml2-2.9.12.tar.xz.drv
> /gnu/store/gda40q0dd10hr0fm4sffzgc9zv24mb0s-libxml2-2.9.12.tar.xz.drv
> /gnu/store/8ir67jqrzwz62s522xi19xlq0yik417f-libtasn1-4.17.0.drv
> /gnu/store/mr9639s4z2fsvcwmw8mw17j9b5f6l4gh-lxml-4.6.3.tar.xz.drv
> /gnu/store/96qnk27khjc25rbdz2gxr22sqgmh4lq9-libxslt-1.1.34.tar.xz.drv
> /gnu/store/jxvirmrqxhfp530vggm6bcgq8rs6ya6y-libtool-2.4.6.tar.xz.drv
> /gnu/store/flmxhxmkj6vbpg6pgh57xp390bxwzqj7-guile-3.0.7.drv
> /gnu/store/sl9k1cdgp1g6hk796sd1pra1w88vnybc-bash-minimal-5.1.8.drv
> /gnu/store/a2zj0nybbs7ydgp30da8vxbgf3s9ndfv-docbook-xsl-1.79.2.tar.xz.drv
> /gnu/store/8rc15lklpf7xyyr57a8mvl2ybvrj5h3q-c-ares-1.17.1.drv
> /gnu/store/4s3kciwd65syrvk3ryvvyk3xydx43mw3-cairo-1.16.0.tar.xz.drv
>
> substituting /gnu/store/yqvsc5brbzpk1m7zr8bnyr66kz9q625a-nasm-2.15.05.tar.xz...
> substituting /gnu/store/4fliaxdz084ijlzb6d98sgg76dmz9xp6-net-tools-1.60-0.479bb4a.zip...
> substituting /gnu/store/js6wj0pmd4lqnnkys7f9az4gcm8szfmi-nettle-3.7.3.tar.gz...
> substituting /gnu/store/lz5qmr8bv3wwmja3vw59yjydiy66ni3a-nghttp2-1.44.0.tar.xz...
> process 30234 acquired build slot '/var/guix/offload/127.0.0.1:6666/1'
> normalized load on machine '127.0.0.1' is 0.17
> building /gnu/store/9xadqmcq1z02x93k7c5xpwbwd4a7f1rk-apr-1.6.5.drv...
> eckout 50269 50269
> Backtrace:
> 19 (apply-smob/0 #<thunk 7fd0dfaedf60>)
> In ice-9/boot-9.scm:
> 724:2 18 (call-with-prompt _ _ #<procedure default-prompt-handler (k proc)>)
> In ice-9/eval.scm:
> 619:8 17 (_ #(#(#<directory (guile-user) 7fd0dfae7c80>)))
> In guix/ui.scm:
> 2185:7 16 (run-guix . _)
> 2148:10 15 (run-guix-command _ . _)
> In ice-9/boot-9.scm:
> 1752:10 14 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
> In guix/status.scm:
> 800:4 13 (call-with-status-report _ _)
> In ice-9/boot-9.scm:
> 1752:10 12 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
> In guix/store.scm:
> 658:37 11 (thunk)
> 1320:8 10 (call-with-build-handler _ _)
> 1320:8 9 (call-with-build-handler #<procedure 7fd0dd3fdfc0 at guix/ui.scm:1155:2 (continue store …> …)
> In guix/scripts/build.scm:
> 699:26 8 (_)
> In guix/store.scm:
> 1388:15 7 (_ #<store-connection 256.99 7fd0dfa699b0> _ _)
> 759:13 6 (process-stderr _ _)
> In unknown file:
> 5 (display "eckout 50269 50269\n@ download-succeeded /gnu/store/1i7b2hrywrp90w5dd9nq6dw788…" …)
> In guix/status.scm:
> 723:16 4 (write! _ _ _)
> 636:15 3 (_ (download-succeeded "/gnu/store/1i7b2hrywrp90w5dd9nq6dw7888wzqkq-mallard-ducktype-…" …) …)
> 272:33 2 (compute-status _ #<<build-status> building: (#<<build> derivation: "/gnu/store/9xadqmcq…> …)
> 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:
> In procedure struct-vtable: Wrong type argument in position 1 (expecting
> struct): #f

That reminds me of https://issues.guix.gnu.org/43518 though it seems
to be a bit different.

The context of status.scm:272:33 is this:

Toggle snippet (15 lines)
(('download-succeeded item uri (= string->number size))
(let ((current (find (matching-download item)
(build-status-downloading status))))
(build-status
(inherit status)
(downloading (delq current (build-status-downloading status)))
(downloads-completed
(cons (download item uri
#:size size
#:start (download-start current) ;<- HERE
#:transferred size
#:end (current-time time-monotonic))
(build-status-downloads-completed status))))))

Here, ‘current’ is #f, hence the type error. We could be defensive and
check whether ‘current’ is #f before proceeding; however, it’s “not
supposed to happen” as that indicates an inconsistency: that ‘status’
doesn’t match reality.

The root cause is probably that (guix status) missed a trace, one of
these “@ download-progress …” lines, which would probably be a bug in
‘build-event-output-port’. Or it could be that the output from
guix-daemon is already intermingled, though that’s again not supposed to
happen.

Perhaps the best course of action here would be to hammer
‘build-event-output-port’ with semi-randomly generated data until we can
reproduce the bug, assuming this is where it takes place.

Thanks,
Ludo’.
M
M
Maxim Cournoyer wrote on 31 Aug 2021 17:44
(address . 49862@debbugs.gnu.org)
87a6kxippt.fsf@gmail.com
Hi,

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


[...]

Toggle quote (46 lines)
> substituting /gnu/store/yqvsc5brbzpk1m7zr8bnyr66kz9q625a-nasm-2.15.05.tar.xz...
> substituting /gnu/store/4fliaxdz084ijlzb6d98sgg76dmz9xp6-net-tools-1.60-0.479bb4a.zip...
> substituting /gnu/store/js6wj0pmd4lqnnkys7f9az4gcm8szfmi-nettle-3.7.3.tar.gz...
> substituting /gnu/store/lz5qmr8bv3wwmja3vw59yjydiy66ni3a-nghttp2-1.44.0.tar.xz...
> process 30234 acquired build slot '/var/guix/offload/127.0.0.1:6666/1'
> normalized load on machine '127.0.0.1' is 0.17
> building /gnu/store/9xadqmcq1z02x93k7c5xpwbwd4a7f1rk-apr-1.6.5.drv...
> eckout 50269 50269
> Backtrace:
> 19 (apply-smob/0 #<thunk 7fd0dfaedf60>)
> In ice-9/boot-9.scm:
> 724:2 18 (call-with-prompt _ _ #<procedure default-prompt-handler (k proc)>)
> In ice-9/eval.scm:
> 619:8 17 (_ #(#(#<directory (guile-user) 7fd0dfae7c80>)))
> In guix/ui.scm:
> 2185:7 16 (run-guix . _)
> 2148:10 15 (run-guix-command _ . _)
> In ice-9/boot-9.scm:
> 1752:10 14 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
> In guix/status.scm:
> 800:4 13 (call-with-status-report _ _)
> In ice-9/boot-9.scm:
> 1752:10 12 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
> In guix/store.scm:
> 658:37 11 (thunk)
> 1320:8 10 (call-with-build-handler _ _)
> 1320:8 9 (call-with-build-handler #<procedure 7fd0dd3fdfc0 at guix/ui.scm:1155:2 (continue store …> …)
> In guix/scripts/build.scm:
> 699:26 8 (_)
> In guix/store.scm:
> 1388:15 7 (_ #<store-connection 256.99 7fd0dfa699b0> _ _)
> 759:13 6 (process-stderr _ _)
> In unknown file:
> 5 (display "eckout 50269 50269\n@ download-succeeded /gnu/store/1i7b2hrywrp90w5dd9nq6dw788…" …)
> In guix/status.scm:
> 723:16 4 (write! _ _ _)
> 636:15 3 (_ (download-succeeded "/gnu/store/1i7b2hrywrp90w5dd9nq6dw7888wzqkq-mallard-ducktype-…" …) …)
> 272:33 2 (compute-status _ #<<build-status> building: (#<<build> derivation: "/gnu/store/9xadqmcq…> …)
> 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:
> In procedure struct-vtable: Wrong type argument in position 1 (expecting
> struct): #f

Here's a slightly different backtrace of the same problem:

Toggle snippet (51 lines)
substitution of /gnu/store/z080ssymr51skixc96aq60rasbjjgjdl-jmtpfs-0.5 complete
substitution of /gnu/store/z5rnmph0r1dpdnml4hx5qr1jj3qqvibm-libchamplain-0.12.16 complete
process 32168 acquired build slot '/var/guix/offload/127.0.0.1:6666/3'
normalized load on machine '127.0.0.1' is 1.00
process 32168 acquired build slot '/var/guix/offload/127.0.0.1:6666/4'
normalized load on machine '127.0.0.1' is 1.00
process 32168 acquired build slot '/var/guix/offload/127.0.0.1:6666/4'
normalized load on machine '127.0.0.1' is 1.00
process 32168 acquired build slot '/var/guix/offload/127.0.0.1:6666/3'
normalized load on machine '127.0.0.1' is 1.00
g/nar/lzip/y21d8a1yk64fc2b7n7ckq83j6hdc75gb-gimp-2.10.24 20010204 15860036

-78.13.0-guix0-preview1 53984758 4063328
icecat-78.13.0-guix0-preview1 51.5MiB Backtrace:
In guix/ui.scm:
2148:10 19 (run-guix-command _ . _)
In ice-9/boot-9.scm:
1752:10 18 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
In guix/status.scm:
820:3 17 (_)
800:4 16 (call-with-status-report _ _)
In guix/store.scm:
1320:8 15 (call-with-build-handler _ _)
1320:8 14 (call-with-build-handler #<procedure 7f3d053078d0 at guix/ui.scm:1155:2 (continue store thing
In guix/build/syscalls.scm:
1374:3 13 (_)
1341:4 12 (call-with-file-lock/no-wait _ _ _)
In guix/scripts/package.scm:
148:19 11 (build-and-use-profile #<store-connection 256.99 7f3d065d0050> "/var/guix/profiles/per-user/m
In guix/store.scm:
2108:24 10 (run-with-store #<store-connection 256.99 7f3d065d0050> _ #:guile-for-build _ #:system _ #:ta
In guix/profiles.scm:
1803:2 9 (_ _)
In guix/store.scm:
1993:12 8 (_ #<store-connection 256.99 7f3d065d0050>)
1395:5 7 (map/accumulate-builds #<store-connection 256.99 7f3d065d0050> _ _)
1406:15 6 (_ #<store-connection 256.99 7f3d065d0050> _ _)
759:13 5 (process-stderr _ _)
In unknown file:
4 (display "@ substituter-succeeded /gnu/store/y21d8a1yk64fc2b7n7ckq83j6hdc75gb-gimp-2.10.24\n"
In guix/status.scm:
723:16 3 (write! _ _ _)
637:6 2 (_ (download-progress "/gnu/store/xj6m19yvs7b54lgafy5b3r10gk6c3k8f-icecat-78.13.0-guix0-previ
In guix/progress.scm:
223:17 1 (display-download-progress "nar@" _ #:tty? _ #:start-time _ #:transferred _ #:log-port _)
In ice-9/boot-9.scm:
1685:16 0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
In procedure =: Wrong type argument in position 1: #f
M
M
Maxim Cournoyer wrote on 1 Nov 2022 16:36
(address . 49862@debbugs.gnu.org)
87iljyd6ud.fsf@gmail.com
Hi,

Adding yet another backtrace of that problem, that was triggered while
running './pre-inst-env guix build python-astroquery@0.4.6 vorta@0.8.7
cura@4.13.1 komikku@1.2.0 jrnl@1.9.7 pantalaimon@0.10.5
python-harmony@0.7.1 caja-extensions@1.24.1 gourmet@0.17.4-0.8af29c8
python-swiftclient@4.0.1 dbxfs@1.0.63 orange@3.32.0 linuxdcpp@1.1.0
ikiwiki@3.20200202.3 breezy@3.2.2 python-nanopb@0.4.6.4
openconnect-sso@0.7.3 qtile@0.18.1' with python-keyring having been
modified:

Toggle snippet (63 lines)
diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index 7b7aac6201..def347c06d 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -49,6 +49,7 @@ (define-module (gnu packages python-crypto)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix build-system cargo)
+ #:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix utils)
#:use-module (gnu packages)
@@ -326,29 +327,34 @@ (define-public python-kerberos
(define-public python-keyring
(package
(name "python-keyring")
- (version "22.0.1")
+ (version "23.9.3")
(source
(origin
- (method url-fetch)
- (uri (pypi-uri "keyring" version))
- (sha256
- (base32
- "1pvqc6may03did0iz98gasg7cy4h8ljzs4ibh927bfzda8a3xjws"))))
- (build-system python-build-system)
+ (method url-fetch)
+ (uri (pypi-uri "keyring" version))
+ (sha256
+ (base32
+ "19f4jpsxng9sjfqi8ww5hgg196r2zh1zb8g71wjr1xa27kc1vc39"))))
+ (build-system pyproject-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
- (when tests?
- (invoke "pytest" "-vv" "-c" "/dev/null" "tests")))))))
+ (list
+ #:test-flags '(list "-c" "/dev/null") ;avoid extra test dependencies
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'workaround-test-failure
+ (lambda _
+ ;; Workaround a failure in the test_entry_point test (see:
+ ;; https://github.com/jaraco/keyring/issues/526).
+ (delete-file-recursively "keyring.egg-info"))))))
(native-inputs
(list python-toml
python-pytest
python-setuptools
python-setuptools-scm))
(propagated-inputs
- (list python-secretstorage))
+ (list python-importlib-metadata
+ python-jaraco-classes
+ python-secretstorage))
(home-page "https://github.com/jaraco/keyring")
(synopsis "Store and access your passwords safely")
(description

Toggle snippet (36 lines)
Backtrace:
In guix/store.scm:
1300:8 19 (call-with-build-handler _ _)
1300:8 18 (call-with-build-handler #<procedure 7faf27904f90 at guix/ui.scm:1171:2 (continue store …> …)
In guix/ui.scm:
462:3 17 (_)
In ice-9/boot-9.scm:
1747:15 16 (with-exception-handler #<procedure 7faf18957540 at ice-9/boot-9.scm:1831:7 (exn)> _ # _ # …)
1752:10 15 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
In guix/ui.scm:
449:6 14 (_)
In guix/scripts/build.scm:
714:5 13 (_)
In srfi/srfi-1.scm:
673:15 12 (append-map _ _ . _)
586:17 11 (map1 ("x86_64-linux"))
In guix/scripts/build.scm:
716:21 10 (_ _)
In guix/store.scm:
1403:5 9 (map/accumulate-builds #<store-connection 256.99 7faf2a3e70f0> #<procedure 7faf263dd2d0 …> …)
1419:15 8 (_ #<store-connection 256.99 7faf2a3e70f0> _ _)
739:14 7 (process-stderr _ _)
In unknown file:
6 (display "@ substituter-succeeded /gnu/store/wjbisajny3c9pwj4crqyq3yd77gf2pfl-qtdeclarat…" …)
In guix/status.scm:
733:16 5 (write! _ _ _)
645:15 4 (_ (download-succeeded "/gnu/store/qwds28f6pqq5aaw90678v9qzfj6qiivq-texlive-amsf@" "s…" …) …)
272:33 3 (compute-status _ #<<build-status> building: (#<<build> derivation: "/gnu/store/xc34bvzi…> …)
In ice-9/boot-9.scm:
1685:16 2 (raise-exception _ #:continuable? _)
1685:16 1 (raise-exception _ #:continuable? _)
1685:16 0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:

--
Thanks,
Maxim
?