[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#64760: make check fails on 182be30fb1a8b847c30492462ec22c08ec7a9849
From: |
Janneke Nieuwenhuizen |
Subject: |
bug#64760: make check fails on 182be30fb1a8b847c30492462ec22c08ec7a9849 |
Date: |
Sun, 30 Jul 2023 18:19:40 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
Josselin Poiret writes:
Hey!
> Janneke Nieuwenhuizen <janneke@gnu.org> writes:
>
>> Just a headsup that this change breaks the store-roots test on the hurd
>> for me.
>
> Thanks for the feedback Janneke. It seems that there is some left-over
> state that can mess with this state's result: I was initially surprised
> that the /profiles directory could appear in the gc roots, but that's
> because it is symlinked under /gcroots, not because it is itself
> searched for gc roots.
>
> In any case, the /gcroots directory along with the /gcroots/profiles
> symlink is created when a connection is made to the daemon, which is not
> the case here yet. However, a connection might have been opened before
> for the same state dir (which depends on the PID of
> build-aux/test-env.in). It might also depend on whether the clean-up of
> the state directory made by `trap` worked and whether PIDs get re-used
> quickly on the specific kernel. I think this is all too unreliable
> here (I have one such example of a leftover PID state dir in my tree, so
> it might happen more often than not).
Yes, that could be. I've got another data-point for i686-linux (see
also https://issues.guix.gnu.org/64959); the package and texlive tests
now pass, and store-roots is made to fail like so:
--8<---------------cut here---------------start------------->8---
test-name: gc-roots, initial
location: /home/janneke/src/guix/wip-i686/tests/store-roots.scm:33
source:
+ (test-equal
+ "gc-roots, initial"
+ '()
+ (begin
+ (false-if-exception
+ (delete-file-recursively
+ (string-append %state-directory "/profiles")))
+ (gc-roots)))
expected-value: ()
actual-value: ("/home/janneke/src/guix/wip-i686/test-tmp/var/30690/profiles")
result: FAIL
--8<---------------cut here---------------end--------------->8---
> In any case, if this test is only here to check if gc-roots doesn't
> error out, we could return #t at the end to only fish for errors. WDYT?
(good question.../me passes insights here to "others" ;)
Greetings,
Janneke
--
Janneke Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | AvatarĀ® https://AvatarAcademy.com