Bug#750732: libanyevent-perl: Intermittent build failures on various architectures

gregor herrmann gregoa at debian.org
Fri Jan 5 01:35:38 UTC 2018


On Mon, 01 Jan 2018 18:56:52 +0200, Niko Tyni wrote:

> The issue seems mostly specific to armel and hurd, although
> tests.reproducible-builds.org does have some failures on i386 (but no
> logs so those could be just testbed glitches or transient sid issues.)
> I don't know what happened in Ubuntu but it clearly built later.

Yup, it seems a bit undeterministic.
 
> Currently we have a build failure on armel that's blocking testing
> migration of this package. Given the number of reverse dependencies,
> I suppose we need to solve this one way or other.

Ack.
 
> Disregarding hurd-i386, the problematic test seems to be
> t/66_ioasync_03_signals.t, 

t/66_ioasync_02_signals.t or t/66_ioasync_03_child.t?
Anyway, IIRC we've seen failures in different tests over time.

> which is using AnyEvent::Impl::IOAsync
> which uses IO::Async. 

Ack, that's the whole t/66_ioasync_*.t block.

> I see the AnyEvent::Impl::IOAsync docs have some
> reservations about IO::Async, this in particular:

That, and more comments in the code and documentation about IO::Async.
 
> I'm not sure what to make of this. Maybe disarm this particular test somehow
> for now and see how it fares otherwise?

Which one exactly? :)
I tend to disable the whole t/66_ioasync_*.t group.
Or maybe not:


And, lo and behold, I could reproduce a test failure, on one of my
raspis, running Raspbian Buster (and under some load). There the test
suite was just hanging here:

t/66_ioasync_03_child.t ....
1..50
ok 1
ok 2 # child 15124
ok 3 # 15124 == 15124
ok 4 # 3 == 768 >> 8 (768)
ok 5 # 15126 == 15126
ok 6 # 7 == 1792 >> 8 (1792)
ok 7
ok 8
ok 9
ok 10
ok 11
ok 12 # child 15127


Of course this only happened once over the time I run the tests in a
loop so far ...


On https://buildd.debian.org/status/fetch.php?pkg=libanyevent-perl&arch=armel&ver=7.140-1&stamp=1505267718&raw=0
it was

t/66_ioasync_02_signals.t .. 
1..5
ok 1
ok 2
ok 3
ok 4
ok 5
ok
Bailout called.  Further testing stopped:  No child exit detected. This is either a bug in AnyEvent or a bug in your Perl (mostly some windows distributions suffer from that): child watchers might not work properly on this platform. You can force installation of this module if you do not rely on child watchers, or you could upgrade to a working version of Perl for your platform.

(Does this mean that t/66_ioasync_02_signals.t failed or the
following t/66_ioasync_03_child.t ?)


Some other failures:
https://buildd.debian.org/status/fetch.php?pkg=libanyevent-perl&arch=armel&ver=7.120-1%2Bb1&stamp=1474787791&raw=0
https://buildd.debian.org/status/fetch.php?pkg=libanyevent-perl&arch=armel&ver=7.120-1%2Bb1&stamp=1474805578&raw=0
same as above

https://buildd.debian.org/status/fetch.php?pkg=libanyevent-perl&arch=sparc64&ver=7.130-1&stamp=1476943760&raw=0
t/66_ioasync_02_signals.t .. 
1..5
ok 1
ok 2
ok 3
ok 4
ok 5
ok
E: Caught signal ‘Terminated’: terminating immediatelydebian/rules:13: recipe for target 'override_dh_auto_test' failed

So basically the same.

https://buildd.debian.org/status/fetch.php?pkg=libanyevent-perl&arch=x32&ver=7.070-3&stamp=1411189350&raw=0
t/66_ioasync_02_signals.t .. ok
Bailout called.  Further testing stopped:  No child exit detected. This is either a bug in AnyEvent or a bug in your Perl (mostly some windows distributions suffer from that): child watchers might not work properly on this platform. You can force installation of this module if you do not rely on child watchers, or you could upgrade to a working version of Perl for your platform.

Same again.

Looks like t/66_ioasync_03_child.t is our candidate, if I'm
interpreting this correctly.


Oh, and I have another hang on my Raspi:

t/66_ioasync_03_child.t .... 
1..50
ok 1
ok 2 # child 22400
ok 3 # 22400 == 22400
ok 4 # 3 == 768 >> 8 (768)
ok 5 # 22401 == 22401
ok 6 # 7 == 1792 >> 8 (1792)
ok 7
ok 8
ok 9
ok 10
ok 11
ok 12 # child 22402
ok 13 # 22402 == 22402
ok 14 # 3 == 768 >> 8 (768)
ok 15 # 22403 == 22403
ok 16 # 7 == 1792 >> 8 (1792)
ok 17
ok 18
ok 19
ok 20
ok 21
ok 22 # child 22404
ok 23 # 22404 == 22404
ok 24 # 3 == 768 >> 8 (768)
ok 25 # 22405 == 22405
ok 26 # 7 == 1792 >> 8 (1792)
ok 27
ok 28
ok 29
ok 30
ok 31
ok 32 # child 22406
ok 33 # 22406 == 22406
ok 34 # 3 == 768 >> 8 (768)
ok 35 # 22407 == 22407
ok 36 # 7 == 1792 >> 8 (1792)
ok 37
ok 38
ok 39
ok 40
ok 41
ok 42 # child 22408


Commit pushed to alioth, feedback welcome before I upload.


Cheers,
gregor


-- 
 .''`.  https://info.comodo.priv.at -- Debian Developer https://www.debian.org
 : :' : OpenPGP fingerprint D1E1 316E 93A7 60A8 104D  85FA BB3A 6801 8649 AA06
 `. `'  Member VIBE!AT & SPI Inc. -- Supporter Free Software Foundation Europe
   `-   NP: STS: Großvater
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 963 bytes
Desc: Digital Signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-perl-maintainers/attachments/20180105/3c3ce8a3/attachment-0001.sig>


More information about the pkg-perl-maintainers mailing list