From: Chris Marusich <cmmarusich@gmail.com>
To: 47018@debbugs.gnu.org
Cc: Lars-Dominik Braun <lars@6xq.net>
Subject: bug#47018: core-updates: make check fails when guix-daemon is running
Date: Tue, 09 Mar 2021 00:48:14 -0800 [thread overview]
Message-ID: <87r1ko4ss1.fsf@gmail.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 4679 bytes --]
Hi,
Lars-Dominik, I'm CCing you on this email because you introduced the
code discussed below, so I'm hoping you might know something about it.
If you could please take a look, I'd really appreciate it!
Starting with commit 09448c0994390697e876db235a3b773311795238, "make
check" fails when a guix-daemon is running. (It doesn't fail when
guix-daemon is not running, since the problematic code below is only
executed when an "external store" is available.) A guix-daemon is
usually running when one manually invokes "make check" on a system where
Guix has already been installed.
One specific test failure is test/guix-package.sh, which fails as
follows:
--8<---------------cut here---------------start------------->8---
test-name: python-build-system: python-dummy-ok
location: /home/marusich/guix-core-updates/tests/builders.scm:174
source:
+ (test-assert
+ (string-append
+ "python-build-system: "
+ (package-name p))
+ (let* ((drv (package-derivation store p)))
+ (build-derivations store (list drv))))
actual-value: #f
actual-error:
+ (out-of-range
+ #f
+ "Value out of range ~S to ~S: ~S"
+ (0 59 81)
+ (81))
result: FAIL
test-name: python-build-system: python-dummy-no-setuptools
location: /home/marusich/guix-core-updates/tests/builders.scm:174
source:
+ (test-assert
+ (string-append
+ "python-build-system: "
+ (package-name p))
+ (let* ((drv (package-derivation store p)))
+ (build-derivations store (list drv))))
actual-value: #f
actual-error:
+ (out-of-range
+ #f
+ "Value out of range ~S to ~S: ~S"
+ (0 59 81)
+ (81))
result: FAIL
--8<---------------cut here---------------end--------------->8---
The test succeeds on the previous commit.
Upon closer inspection, it seems the failure occurs when calling
package-derivation. By putting the following code into the
tests/builders.scm file...
--8<---------------cut here---------------start------------->8---
(pk 'beforerun)
(with-external-store store
(package-derivation store python-dummy-ok))
(pk 'afterrun)
--8<---------------cut here---------------end--------------->8---
...I was able to get this error message when running "make check
TESTS=tests/builders.scm":
--8<---------------cut here---------------start------------->8---
;;; (beforerun)
Backtrace:
In guix/packages.scm:
1519:22 19 (thunk)
1448:25 18 (bag->derivation #<store-connection 256.99 7fff865c5190> …)
In srfi/srfi-1.scm:
586:29 17 (map1 (("source" #<origin "https://data.iana.org/t…>) …))
586:29 16 (map1 (("tzcode" #<origin "https://data.iana.org/t…>) …))
586:17 15 (map1 (("tar" #<package tar@1.34 guix/build-system…>) …))
In guix/packages.scm:
1224:16 14 (expand-input #<store-connection 256.99 7fff865c5190> # …)
1181:16 13 (package-derivation _ #<package tar@1.34 guix/build-sy…> …)
1519:22 12 (thunk)
1448:25 11 (bag->derivation #<store-connection 256.99 7fff865c5190> …)
In srfi/srfi-1.scm:
586:17 10 (map1 (("source" #<origin "mirror://gnu/tar/tar-1.…>) …))
In guix/packages.scm:
1243:5 9 (expand-input _ _ _ _ _)
In ice-9/boot-9.scm:
1736:10 8 (with-exception-handler _ _ #:unwind? _ # _)
In guix/packages.scm:
1248:18 7 (_)
In guix/store.scm:
2062:24 6 (run-with-store #<store-connection 256.99 7fff865c5190> …)
1896:8 5 (_ _)
In guix/gexp.scm:
258:18 4 (_ _)
In guix/packages.scm:
1635:7 3 (_ _)
616:2 2 (patch-and-repack #<derivation /gnu/store/z66sd90j5ya4…> …)
In unknown file:
1 (string-drop "/gnu/store/4y8yhyxhvh725bp3bk7wzr3jn8r5h…" …)
In ice-9/boot-9.scm:
1669:16 0 (raise-exception _ #:continuable? _)
ice-9/boot-9.scm:1669:16: In procedure raise-exception:
Value out of range 0 to 59: 74
--8<---------------cut here---------------end--------------->8---
I'm not sure exactly what the problem is. I'm inclined to believe that
it represents some sort of test logic bug, rather than a real python
packaging bug, I'm not really sure.
I see that the problematic forms are using macros. Specifically, the
tests/builders.scm code is attempting to simultaneously mix invocations
of lambdas, the test-assert syntax (i.e., macro), and the
with-external-store syntax (i.e., macro). I wonder if there's a
macro-related bug lurking here... Any ideas?
For now, the failures can be worked around by stopping guix-daemon when
running "make check." Naturally, this bug isn't a problem when guix
builds guix, since an external store is not available in the build
environment, so the problematic code doesn't get executed there.
--
Chris
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
next reply other threads:[~2021-03-09 8:49 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-09 8:48 Chris Marusich [this message]
2021-03-09 8:51 ` bug#47018: core-updates: make check fails when guix-daemon is running Chris Marusich
2021-03-09 16:45 ` Lars-Dominik Braun
2021-03-12 7:45 ` Chris Marusich
2021-06-20 21:20 ` Ludovic Courtès
2021-07-05 14:59 ` Ludovic Courtès
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=87r1ko4ss1.fsf@gmail.com \
--to=cmmarusich@gmail.com \
--cc=47018@debbugs.gnu.org \
--cc=lars@6xq.net \
/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 public inbox
https://git.savannah.gnu.org/cgit/guix.git
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).