Subject: Re: bug#27137: make check 'FAIL: tests/guix-package-net'

From: [email-masked] (Ludovic Courtès)
Date: Thu, 01 Jun 2017 13:34:52 +0200

Hello,

myglc2 <[email-masked]> skribis:

> On 05/30/2017 at 17:45 Ludovic Courtès writes:
>
>> Hi myglc2,
>>
>> myglc2 <[email-masked]> skribis:
>>
>>> + test t-profile-21734-2-link = t-profile-21734-2-link
>>> + guix package -p t-profile-21734 --switch-generation=-1
>>> accepted connection from pid 30492, user g1
>>> switched from generation 2 to 1
>>> guix package: warning: Your Guix installation is 13 days old.
>>> guix package: warning: Consider running 'guix pull' followed by
>>> 'guix package -u' to get up-to-date packages and security updates.
>>>
>>> ++ readlink_base t-profile-21734
>>> +++ readlink t-profile-21734
>>> ++ basename t-profile-21734-1-link
>>> + test t-profile-21734-1-link = t-profile-21734-1-link
>>> ++ seq 1 3
>>> + for i in `seq 1 3`
>>> + guix package --bootstrap --roll-back -p t-profile-21734
>>> accepted connection from pid 30827, user g1
>>> guix package: error: profile 't-profile-21734' does not exist
>>
>> Could it be that a concurrent process removed ‘t-profile-21734’ behind
>> our back?
>
> I have no idea! This time I did ...
>
> make -j check
>
> ... but I often do ...
>
> make -j 10 check
>
> ... so I repeated ...
>
> make -j 10 check
>
> ... a few times thinking maybe another test could delete the link, but
> could not reproduce the error.

The t-profile-NNN name should be unique for the shell that runs
tests/guix-package-net.sh, so I don’t think running ‘make check’ like
this can trigger the problem.  The only way it could happen is if you
explicitly did “rm t-profile*” or similar while the test was running, I
think.

> BTW, from each 'make check' I do end up with a dangling link like ...
>
> t-profile-alt-10987-1-link ->
> /home/g1/src/guix/test-tmp/store/hwr4xiqd60wrh033wvjljly50j6d39dg-profile
>
> ... is this normal?

Nope, tests/guix-package-net.sh was leaving these files.  I’ve just
fixed it.

>> As you can see, that symlink was available just above.
>> Or is it 100% reproducible when running
>>
>>   make check TESTS=tests/guix-package-net.sh
>>
>> ?
>
> It is not reproducible ... except by deleting the profile while the test is
> running ;-)

Well I’m closing this bug, but do reopen it if it shows up again!

Thanks,
Ludo’.