Guile 3.0.7 fails to build on armhf-linux

  • Done
  • quality assurance status badge
Details
One participant
  • Ludovic Courtès
Owner
unassigned
Submitted by
Ludovic Courtès
Severity
normal
L
L
Ludovic Courtès wrote on 12 Mar 2022 10:28
(address . bug-guix@gnu.org)
87v8wjv7tq.fsf@inria.fr
Guile 3.0.7 appears to fail tests reproducibly on armhf-linux:

Toggle snippet (72 lines)
Running vm.test
Running weaks.test
Running web-client.test
Running web-http.test
Running web-request.test
Running web-response.test
Running web-server.test
ERROR: web-server.test: GET / - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
ERROR: web-server.test: GET /latin1 - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
ERROR: web-server.test: GET /user-agent - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
ERROR: web-server.test: GET /does-not-exist - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
ERROR: web-server.test: GET with keep-alive - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
ERROR: web-server.test: POST / - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
Running web-uri.test
UNRESOLVED: web-uri.test: build-uri: http://ill\xe9gal.com
UNRESOLVED: web-uri.test: string->uri: http://www.example.com (sv_SE)

Totals for this test run:
passes: 41640
failures: 0
unexpected passes: 0
expected failures: 10
unresolved test cases: 581
untested test cases: 1
unsupported test cases: 1
errors: 6

WARNING: Use of `load' in declarative module (test-suite test-r4rs). Add #:declarative? #f to your define-module invocation.
WARNING: (test-suite test-rnrs-exceptions): imported module (rnrs exceptions) overrides core binding `raise'
warning: call to primitive-fork while multiple threads are running;
further behavior unspecified. See "Processes" in the
manual, for more information.
;;; SSAX warning: Skipping PI: xml

;;; SSAX warning: Skipping PI: PI

;;; SSAX warning: Skipping PI: PI1

;;; SSAX warning: (
Warning: DOCTYPE DECL T system1 found and skipped)
;;; SSAX warning: (
Warning: Internal DTD subset is not currently handled )
;;; SSAX warning: (
Warning: DOCTYPE DECL T system1 found and skipped)
;;; SSAX warning: Skipping PI: pi

;;; SSAX warning: DOCTYPE DECL T system1 found and skipped
WARNING: (test-suite sxml-xpath): imported module (sxml xpath) overrides core binding `filter'
FAIL: check-guile
==================================
1 of 1 test failed
Please report to bug-guile@gnu.org
==================================
make[3]: *** [Makefile:2151: check-TESTS] Error 1
make[3]: Leaving directory '/tmp/guix-build-guile-3.0.7.drv-0/guile-3.0.7'
make[2]: *** [Makefile:2442: check-am] Error 2
make[2]: Leaving directory '/tmp/guix-build-guile-3.0.7.drv-0/guile-3.0.7'
make[1]: *** [Makefile:2051: check-recursive] Error 1
make[1]: Leaving directory '/tmp/guix-build-guile-3.0.7.drv-0/guile-3.0.7'
make: *** [Makefile:2444: check] Error 2

Test suite failed, dumping logs.
error: in phase 'check': uncaught exception:
srfi-34 #<condition &invoke-error [program: "make" arguments: ("check" "-j" "16") exit-status: 2 term-signal: #f stop-signal: #f] b5ec40>
phase `check' failed after 196.6 seconds
command "make" "check" "-j" "16" failed with status 2
builder for `/gnu/store/0f37iw8slim3zkmc4mivjk90akl4pdn0-guile-3.0.7.drv' failed with exit code 1
@ build-failed /gnu/store/0f37iw8slim3zkmc4mivjk90akl4pdn0-guile-3.0.7.drv - 1 builder for `/gnu/store/0f37iw8slim3zkmc4mivjk90akl4pdn0-guile-3.0.7.drv' failed with exit code 1
derivation '/gnu/store/0f37iw8slim3zkmc4mivjk90akl4pdn0-guile-3.0.7.drv' offloaded to '10.0.0.9' failed: build of `/gnu/store/0f37iw8slim3zkmc4mivjk90akl4pdn0-guile-3.0.7.drv' failed
build of /gnu/store/0f37iw8slim3zkmc4mivjk90akl4pdn0-guile-3.0.7.drv failed

This is the current ‘guile-final’, meaning Guix has presumably been
unavailable on armhf-linux since the ‘core-updates’ merge in December:

Toggle snippet (10 lines)
$ guix describe
Generation 25 Jan 20 2022 18:20:43 (current)
guix 3e62af6
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: 3e62af6f3b2efcf3181094be79da237ac9208d46
$ guix build -e '(@@ (gnu packages commencement) guile-final)' --no-grafts -d -s armhf-linux
/gnu/store/0f37iw8slim3zkmc4mivjk90akl4pdn0-guile-3.0.7.drv

The build machine above, behind berlin, is actually an aarch64 machine.

Ludo’.
L
L
Ludovic Courtès wrote on 15 Mar 2022 14:40
(address . 54348-done@debbugs.gnu.org)
87a6drl4ez.fsf@gnu.org
Hi,

Ludovic Courtès <ludo@gnu.org> skribis:

Toggle quote (16 lines)
> Guile 3.0.7 appears to fail tests reproducibly on armhf-linux:
>
> Running vm.test
> Running weaks.test
> Running web-client.test
> Running web-http.test
> Running web-request.test
> Running web-response.test
> Running web-server.test
> ERROR: web-server.test: GET / - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
> ERROR: web-server.test: GET /latin1 - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
> ERROR: web-server.test: GET /user-agent - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
> ERROR: web-server.test: GET /does-not-exist - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
> ERROR: web-server.test: GET with keep-alive - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))
> ERROR: web-server.test: POST / - arguments: ((system-error "connect" "~A" ("Connection refused") (111)))

Well, as it turns out it’s not 100% reproducible after all. Probably a
timing issue. I was unable to reproduce it on overdrive1.guix anyway,
so now ci.guix has substitutes for (@@ (gnu packages commencement)
guile-final) for armhf-linux.

Looking at ‘web-server.test’, there’s no synchronization between HTTP
server startup and the first test; thus, there’s a possibility that the
HTTP server is not listening yet by the time the main thread attempts to
connect to the server. Fixed upstream:


Ludo’.
Closed
?