Bug#848060: libx11-protocol-other-perl: FTBFS randomly (failing tests)

gregor herrmann gregoa at debian.org
Thu Dec 22 16:53:21 UTC 2016


On Thu, 15 Dec 2016 10:26:38 +0100, Santiago Vila wrote:

> > Could you maybe test with 29-1 which I just uploaded?
> Tried 100 times. Failed 80. Build failures here:
> https://people.debian.org/~sanvila/libx11-protocol-other-perl/

Thanks for your work, much appreciated.

So this shows that t/XSetRoot.t is the only test failing, but quite
regularly.


On Wed, 21 Dec 2016 21:26:20 -0800, tony mancill wrote:

> I built the package locally 65 times in a row successfully until I
> observed a test hang once with the perl process consuming a full core,
> but I haven't yet reproduced your build failure.  (However, I did
> observe the same test failure in the reproducible-builds [1]).

I can reproduce the failure by running the test in a loop in the
chroot [0]; sometimes in the first low-single-digit round, sometimes a
bit later.

Interestingly, higher load on the machine seems to make
the failure go away (mostly we see the opposite). But this might as
well be a false guess.


Reading through t/XSetRoot.t is interesting:


# Something fishy with xvfb test server seems to cause the reconnect below
# to fail.  Keeping a second connection makes it better.  Dunno why.
#
my $keepalive_X = X11::Protocol->new ($display);

No idea what exactly is going on here, but I note the coincidence of
tha author mentioning xvfb and we running xvfb and the failure
exactly at this point (i.e. after the diagnostic output and before
the first actual test).

Commenting out the line seems to trigger the failure earlier.
Adding yet another connection seems to push the failure further back.
Dropping this second object and adding a sleep(1) after the keepalive
and before the tests (is ugly and) seems to workaround the problem.
Interestingly, the diag output mentions "# DISPLAY :99" and "# DISPLAY
:100" alternating.
Ah, and now I triggered a failure even with the sleep(1).


So ... I'm not sure. It looks like this test has known problems with
xvfb, and this doesn't show a problem in the code.
In line with our handling of similar fragile tests, I propose to
disable it.

Done in git, waiting with an upload for further comments.


Cheers,
gregor


[0]
while : ; do xvfb-run -a prove --blib --verbose t/XSetRoot.t || break ; done
 

-- 
 .''`.  https://info.comodo.priv.at/ - Debian Developer https://www.debian.org
 : :' : OpenPGP fingerprint D1E1 316E 93A7 60A8 104D  85FA BB3A 6801 8649 AA06
 `. `'  Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
   `-   NP: Alannah Myles
-------------- 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/20161222/f4267fdb/attachment.sig>


More information about the pkg-perl-maintainers mailing list