GNU bug report logs -
#18935
gexp->derivation test failure
Previous Next
Reported by: Mark H Weaver <mhw <at> netris.org>
Date: Mon, 3 Nov 2014 15:53:02 UTC
Severity: normal
Done: ludo <at> gnu.org (Ludovic Courtès)
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 18935 in the body.
You can then email your comments to 18935 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-guix <at> gnu.org
:
bug#18935
; Package
guix
.
(Mon, 03 Nov 2014 15:53:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Mark H Weaver <mhw <at> netris.org>
:
New bug report received and forwarded. Copy sent to
bug-guix <at> gnu.org
.
(Mon, 03 Nov 2014 15:53:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
On my i686 standalone Guix system, using Guix v0.7-642-g3b50925 to build
its 'guix' package (0.7.14e84b2) fails, due to a failed test. Here's
the relevant section from gexp.log:
--8<---------------cut here---------------start------------->8---
Test begin:
test-name: "gexp->derivation"
source-file: "tests/gexp.scm"
source-line: 227
source-form: (test-assert "gexp->derivation" (run-with-store %store (mlet* %store-monad ((file (text-file "foo" "Hello, world!")) (exp -> (gexp (begin (mkdir (ungexp output)) (chdir (ungexp output)) (symlink (string-append (ungexp %bootstrap-guile) "/bin/guile") "foo") (symlink (ungexp file) (ungexp output "2nd"))))) (drv (gexp->derivation "foo" exp)) (out -> (derivation->output-path drv)) (out2 -> (derivation->output-path drv "2nd")) (done (built-derivations (list drv))) (refs ((store-lift references) out)) (refs2 ((store-lift references) out2)) (guile (package-file %bootstrap-guile "bin/guile"))) (return (and (string=? (readlink (string-append out "/foo")) guile) (string=? (readlink out2) file) (equal? refs (list (dirname (dirname guile)))) (equal? refs2 (list file))))) #:guile-for-build (%guile-for-build)))
Test end:
result-kind: fail
actual-value: #f
actual-error: (srfi-34 #<condition &nix-protocol-error [message: "path `/tmp/nix-build-guix-0.7.14e84b2.drv-0/source/test-tmp/store/ry17r3hm48ckcchz9ls6yhd00alyiipx-foo' is not valid" status: 1] a587d68>)
--8<---------------cut here---------------end--------------->8---
The 'guix-daemon' used to do this failed build is also 0.7.14e84b2.
The 'guix' used to do this failed build was v0.7-642-g3b50925 plus one
local patch that adds
"--with-default-trust-store-file=/etc/ssl/certs/ca-certificates.crt" to
the GnuTLS configure flags.
Mark
Reply sent
to
ludo <at> gnu.org (Ludovic Courtès)
:
You have taken responsibility.
(Tue, 04 Nov 2014 20:20:01 GMT)
Full text and
rfc822 format available.
Notification sent
to
Mark H Weaver <mhw <at> netris.org>
:
bug acknowledged by developer.
(Tue, 04 Nov 2014 20:20:03 GMT)
Full text and
rfc822 format available.
Message #10 received at 18935-done <at> debbugs.gnu.org (full text, mbox):
Mark H Weaver <mhw <at> netris.org> skribis:
> Test begin:
> test-name: "gexp->derivation"
> source-file: "tests/gexp.scm"
> source-line: 227
> source-form: (test-assert "gexp->derivation" (run-with-store %store (mlet* %store-monad ((file (text-file "foo" "Hello, world!")) (exp -> (gexp (begin (mkdir (ungexp output)) (chdir (ungexp output)) (symlink (string-append (ungexp %bootstrap-guile) "/bin/guile") "foo") (symlink (ungexp file) (ungexp output "2nd"))))) (drv (gexp->derivation "foo" exp)) (out -> (derivation->output-path drv)) (out2 -> (derivation->output-path drv "2nd")) (done (built-derivations (list drv))) (refs ((store-lift references) out)) (refs2 ((store-lift references) out2)) (guile (package-file %bootstrap-guile "bin/guile"))) (return (and (string=? (readlink (string-append out "/foo")) guile) (string=? (readlink out2) file) (equal? refs (list (dirname (dirname guile)))) (equal? refs2 (list file))))) #:guile-for-build (%guile-for-build)))
> Test end:
> result-kind: fail
> actual-value: #f
> actual-error: (srfi-34 #<condition &nix-protocol-error [message: "path `/tmp/nix-build-guix-0.7.14e84b2.drv-0/source/test-tmp/store/ry17r3hm48ckcchz9ls6yhd00alyiipx-foo' is not valid" status: 1] a587d68>)
This can only happen if FILE in that test were deleted after its
creation and before the ‘gexp-derivation’... which cannot even happen
since FILE remains live for the duration of the ‘%store’ session...
except if another daemon instance deletes it!
Commit 834ea02 fixes that: it turns out that tests/nar.scm was creating
the exact same store item, and then calling the GC to delete it.
I’ll update the Guix snapshot in Guix. (In the meantime, chances are
that you can just restart the build and won’t stumble upon this bug,
which was unlikely to occur.)
While looking at this code, I fixed a small issue with caches in
000c59b.
Thanks,
Ludo’.
Information forwarded
to
bug-guix <at> gnu.org
:
bug#18935
; Package
guix
.
(Tue, 04 Nov 2014 21:46:01 GMT)
Full text and
rfc822 format available.
Message #13 received at 18935 <at> debbugs.gnu.org (full text, mbox):
ludo <at> gnu.org (Ludovic Courtès) writes:
> Mark H Weaver <mhw <at> netris.org> skribis:
>
[...]
>> actual-error: (srfi-34 #<condition &nix-protocol-error [message:
>> "path
>> `/tmp/nix-build-guix-0.7.14e84b2.drv-0/source/test-tmp/store/ry17r3hm48ckcchz9ls6yhd00alyiipx-foo'
>> is not valid" status: 1] a587d68>)
>
> This can only happen if FILE in that test were deleted after its
> creation and before the ‘gexp-derivation’... which cannot even happen
> since FILE remains live for the duration of the ‘%store’ session...
> except if another daemon instance deletes it!
>
> Commit 834ea02 fixes that: it turns out that tests/nar.scm was creating
> the exact same store item, and then calling the GC to delete it.
>
> I’ll update the Guix snapshot in Guix.
Thanks!
> (In the meantime, chances are
> that you can just restart the build and won’t stumble upon this bug,
> which was unlikely to occur.)
The same failure happened to me in two consecutive build attempts:
once when running "guix system build", and then again when running
"guix build -K guix" so that I could get the failed test logs.
Mark
Information forwarded
to
bug-guix <at> gnu.org
:
bug#18935
; Package
guix
.
(Wed, 05 Nov 2014 13:34:02 GMT)
Full text and
rfc822 format available.
Message #16 received at 18935 <at> debbugs.gnu.org (full text, mbox):
Mark H Weaver <mhw <at> netris.org> skribis:
> The same failure happened to me in two consecutive build attempts:
> once when running "guix system build", and then again when running
> "guix build -K guix" so that I could get the failed test logs.
Oh, that’s surprising. I’ve not stumbled upon it in my working tree,
and it has not failed on Hydra:
http://hydra.gnu.org/job/gnu/master/guix-0.7.14e84b2.i686-linux/all
http://hydra.gnu.org/job/gnu/master/guix-0.7.14e84b2.x86_64-linux/all
http://hydra.gnu.org/job/gnu/master/guix-0.7.14e84b2.mips64el-linux/all
Ludo’.
Information forwarded
to
bug-guix <at> gnu.org
:
bug#18935
; Package
guix
.
(Wed, 05 Nov 2014 16:29:02 GMT)
Full text and
rfc822 format available.
Message #19 received at 18935 <at> debbugs.gnu.org (full text, mbox):
ludo <at> gnu.org (Ludovic Courtès) writes:
> Mark H Weaver <mhw <at> netris.org> skribis:
>
>> The same failure happened to me in two consecutive build attempts:
>> once when running "guix system build", and then again when running
>> "guix build -K guix" so that I could get the failed test logs.
>
> Oh, that’s surprising. I’ve not stumbled upon it in my working tree,
> and it has not failed on Hydra:
Update: the same failure has happened to me in *five* consecutive build
attempts. I guess I'll have to add another local patch (to update guix
in guix) to get my system updated.
Thanks,
Mark
Information forwarded
to
bug-guix <at> gnu.org
:
bug#18935
; Package
guix
.
(Wed, 05 Nov 2014 20:04:01 GMT)
Full text and
rfc822 format available.
Message #22 received at 18935 <at> debbugs.gnu.org (full text, mbox):
Mark H Weaver <mhw <at> netris.org> skribis:
> ludo <at> gnu.org (Ludovic Courtès) writes:
>
>> Mark H Weaver <mhw <at> netris.org> skribis:
>>
>>> The same failure happened to me in two consecutive build attempts:
>>> once when running "guix system build", and then again when running
>>> "guix build -K guix" so that I could get the failed test logs.
>>
>> Oh, that’s surprising. I’ve not stumbled upon it in my working tree,
>> and it has not failed on Hydra:
>
> Update: the same failure has happened to me in *five* consecutive build
> attempts.
Then either I was mistaken and there’s another bug hiding, or scheduling
and I/O are very much deterministic.
You’re not using --cache-failures, are you?
> I guess I'll have to add another local patch (to update guix in guix)
> to get my system updated.
Then could you try adding just applying 834ea02?
TIA,
Ludo’.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Thu, 04 Dec 2014 12:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 9 years and 144 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.