make check 'FAIL: tests/guix-package-net'

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • myglc2
Owner
unassigned
Submitted by
myglc2
Severity
normal
M
M
myglc2 wrote on 30 May 2017 00:55
(address . bug-guix@gnu.org)
86y3tfs27f.fsf@gmail.com
'make check' failed on commit: 98b9732cb gnu: asciinema: Update to 1.4.0.

Failure:
========
g1@g1 ~/src/guix$ cd ~/src/guix && guix environment -M 4 -c 4 -e "(@ (gnu packages package-management) guix)"
[...]
g1@g1 ~/src/guix [env]$ make -j 10
[...]
g1@g1 ~/src/guix [env]$ make -j check
[...]
============================================================================
Testsuite summary for GNU Guix 0.12.0.3894-6f543
============================================================================
# TOTAL: 710
# PASS: 701
# SKIP: 8
# XFAIL: 0
# FAIL: 1
# XPASS: 0
# ERROR: 0
============================================================================
See ./test-suite.log
Please report to bug-guix@gnu.org
============================================================================
make[4]: *** [Makefile:4416: test-suite.log] Error 1
make[4]: Leaving directory '/home/g1/src/guix'
make[3]: *** [Makefile:4524: check-TESTS] Error 2
make[3]: Leaving directory '/home/g1/src/guix'
make[2]: *** [Makefile:4764: check-am] Error 2
make[2]: Leaving directory '/home/g1/src/guix'
make[1]: *** [Makefile:4301: check-recursive] Error 1
make[1]: Leaving directory '/home/g1/src/guix'
make: *** [Makefile:4766: check] Error 2
g1@g1 ~/src/guix [env]$ exit

Commit:
=======
g1@g1 ~/src/guix$ git -C ~/.config/guix/latest describe
v0.13.0-323-g98b9732cb
g1@g1 ~/src/guix$ stat ~/.config/guix/latest | grep File:
File: /home/g1/.config/guix/latest -> /home/g1/src/guix/
g1@g1 ~/src/guix$

./test-suite.log
================
Attachment: test-suite.log.gz
L
L
Ludovic Courtès wrote on 30 May 2017 17:45
(name . myglc2)(address . myglc2@gmail.com)(address . 27137@debbugs.gnu.org)
87k24y2vsn.fsf@gnu.org
Hi myglc2,

myglc2 <myglc2@gmail.com> skribis:

Toggle quote (18 lines)
> + 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? 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

?

Thanks,
Ludo’.
M
M
myglc2 wrote on 30 May 2017 19:19
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 27137@debbugs.gnu.org)
86o9ua6z59.fsf@gmail.com
On 05/30/2017 at 17:45 Ludovic Courtès writes:

Toggle quote (25 lines)
> Hi myglc2,
>
> myglc2 <myglc2@gmail.com> 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. 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?

Toggle quote (7 lines)
> 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 ;-)

HTH - George
L
L
Ludovic Courtès wrote on 1 Jun 2017 13:34
(name . myglc2)(address . myglc2@gmail.com)(address . 27137@debbugs.gnu.org)
87fufk2b6r.fsf@gnu.org
Hello,

myglc2 <myglc2@gmail.com> skribis:

Toggle quote (42 lines)
> On 05/30/2017 at 17:45 Ludovic Courtès writes:
>
>> Hi myglc2,
>>
>> myglc2 <myglc2@gmail.com> 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.

Toggle quote (7 lines)
> 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.

Toggle quote (10 lines)
>> 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’.
L
L
Ludovic Courtès wrote on 1 Jun 2017 13:35
control message for bug #27137
(address . control@debbugs.gnu.org)
87efv42b5u.fsf@gnu.org
tags 27137 unreproducible
close 27137
?