Bug#545626: libcache-memcached-perl: FTBFS: tests failed

Niko Tyni ntyni at debian.org
Mon Sep 21 19:12:09 UTC 2009


On Thu, Sep 10, 2009 at 05:43:50PM +0200, gregor herrmann wrote:
> On Wed, 09 Sep 2009 23:05:13 +0300, Niko Tyni wrote:
> 
> > > If I add "netbase" to the build deps, it still builds fine on i386,
> > > and now fails differently on amd64 (no warnings, only one failure,
> > > fails the 'other' test in this file):
> > 
> > >  #   Failed test 'Expected pause while connecting'
> > >  #   at t/05_reconnect_timeout.t line 24.
> > 
> > Can you reproduce this reliably?
> 
> Yes, if I run "-dh_auto_test" 10 times from debian/rules I get the
> same error 10 times.

This probably depends on the ISP routers. I'm seeing rate-limited ICMP
host unreachable messages when opening a TCP connection to 192.0.2.1, and
I managed to catch one of the failures with tcpdump + strace. Excerpts:

1..2
not ok 1 - Expected pause while connecting
#   Failed test 'Expected pause while connecting'
#   at t/05_reconnect_timeout.t line 22.
ok 2 - Should return fast on retry

13:31:45.886822 IP 192.168.234.150.34446 > 192.0.2.1.11211: S 3164708393:3164708393(0) win 5840 <mss 1460,
sackOK,timestamp 1012516 0,nop,wscale 7>
13:31:45.943047 IP 139.97.3.82 > 192.168.234.150: ICMP host 192.0.2.1 unreachable, length 36

8620  13:31:45.886757 connect(3, {sa_family=AF_INET, sin_port=htons(11211), sin_addr=inet_addr("192.0.2.1")}, 16) = -1 EINPROGRESS (Operation now in progress) <0.000172>
8620  13:31:45.887859 select(8, NULL, [3], NULL, {0, 250000}) = 1 (out [3], left {0, 196000}) <0.055230>
8620  13:31:45.943188 connect(3, {sa_family=AF_INET, sin_port=htons(11211), sin_addr=inet_addr("192.0.2.1")}, 16) = -1 EHOSTUNREACH (No route to host) <0.000014>

IOW, if the timing is right, the select() call in
Cache::Memcached::_connect_sock() that is expected to time out is
interrupted by the ICMP message. The subsequent connect() call gets
EHOSTUNREACH straight away and there is no 'pause while connecting'.

I'm sure there are different failure modes for this. Skipping this test
altogether for the Debian builds seems to make sense.

I'm attaching a patch that I think fixes all the issues discussed in
this report.
-- 
Niko Tyni   ntyni at debian.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 545626.patch
Type: text/x-diff
Size: 1912 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-perl-maintainers/attachments/20090921/f7a356d8/attachment.patch>


More information about the pkg-perl-maintainers mailing list