Skip Menu |
 

This queue is for tickets about the HTTP-Server-Simple CPAN distribution.

Report information
The Basics
Id: 96086
Status: open
Priority: 0/
Queue: HTTP-Server-Simple

People
Owner: Nobody in particular
Requestors: daniel [...] serverb.co.uk
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: [PATCH] Fix port already in use test failure
Date: Fri, 30 May 2014 19:13:15 +0100
To: bug-http-server-simple [...] rt.cpan.org
From: Daniel Lintott <daniel [...] serverb.co.uk>
Download (untitled) / with headers
text/plain 445b
In Debian we are currently applying the attached patch to HTTP-Server-Simple. We thought you might be interested in it, too. Description: Fix port already in use test failure Between the IPv4 and IPv6 tests we need to bump the port number to prevent the test suite failing and consequently hanging the build process Author: Daniel Lintott <daniel@serverb.co.uk> Last-Update: 2014-05-30 Thanks in advance, Daniel Lintott, Debian Perl Group

Message body is not shown because sender requested not to inline it.

Download (untitled) / with headers
text/plain 654b
On Fri May 30 14:13:32 2014, daniel@serverb.co.uk wrote: Show quoted text
> In Debian we are currently applying the attached patch to HTTP-Server- > Simple. > We thought you might be interested in it, too. > > Description: Fix port already in use test failure > Between the IPv4 and IPv6 tests we need to bump the port number > to prevent the test suite failing and consequently hanging the > build process > Author: Daniel Lintott <daniel@serverb.co.uk> > Last-Update: 2014-05-30
Hmm- while this patch seems reasonable, I wasn't actually seeing any of these failures on my Debian 7 testing box. Do you still need this patch in order to pass tests on 0.50? -kevin
CC: Debian Perl <debian-perl [...] lists.debian.org>
Subject: Re: [rt.cpan.org #96086] [PATCH] Fix port already in use test failure
Date: Tue, 03 Feb 2015 15:51:32 +0000
To: bug-HTTP-Server-Simple [...] rt.cpan.org
From: Daniel Lintott <daniel [...] serverb.co.uk>
Download (untitled) / with headers
text/plain 2.5k
Hi Kevin, (CC: debian-perl mailing list in case anyone has any ideas!) On 02/02/15 15:44, Kevin Falcone via RT wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=96086 > > > Hmm- while this patch seems reasonable, I wasn't actually seeing any of these failures on my Debian 7 testing box. Do you still need this patch in order to pass tests on 0.50? > > -kevin >
Running the build using sbuild (used for building Debian packages in schroot) and Debian Sid (unstable) without the patch gives the following error: Show quoted text
> bind to *:45479: Address already in use at t/01live.t line 157. > child unresponsive for 5 seconds at /«PKGBUILDDIR»/blib/lib/HTTP/Server/Simple.pm line 261. > # Looks like you planned 34 tests but ran 6. > # Looks like your test exited with 29 just after 6.
Running the tests manually in an Debian Sid (unstable) chroot without the patch gives: Show quoted text
> t/00smoke.t ........ ok > t/01live.t ......... 4/34 bind to *:43048: Address already in use at t/01live.t line 157. > t/01live.t ......... 12/34 bind to *:43049: Address already in use at t/01live.t line 157. > t/01live.t ......... ok > t/02pod.t .......... ok > t/03podcoverage.t .. ok > t/04cgi.t .......... ok > All tests successful. > Files=5, Tests=108, 18 wallclock secs ( 0.11 usr 0.01 sys + 0.78 cusr 0.16 csys = 1.06 CPU) > Result: PASS
Debian 7 (Wheezy) chroot: Show quoted text
> t/00smoke.t ........ ok > t/01live.t ......... 1/34 bind to *:42759: Address already in use at t/01live.t line 157 > t/01live.t ......... 12/34 bind to *:42760: Address already in use at t/01live.t line 157 > t/01live.t ......... ok > t/02pod.t .......... skipped: Test::Pod 1.14 required for testing POD > t/03podcoverage.t .. skipped: Test::Pod::Coverage 1.04 required for testing POD coverage > t/04cgi.t .......... ok > All tests successful. > Files=5, Tests=102, 17 wallclock secs ( 0.10 usr 0.02 sys + 0.47 cusr 0.11 csys = 0.70 CPU) > Result: PASS
My Debian 7 Workstation (not a chroot): Show quoted text
> t/00smoke.t ........ ok > t/01live.t ......... ok > t/02pod.t .......... skipped: Test::Pod 1.14 required for testing POD > t/03podcoverage.t .. skipped: Test::Pod::Coverage 1.04 required for testing POD coverage > t/04cgi.t .......... ok > All tests successful. > Files=5, Tests=102, 20 wallclock secs ( 0.15 usr 0.03 sys + 0.65 cusr 0.18 csys = 1.01 CPU) > Result: PASS
Okay... So now where getting somewhere! Whenever the tests are run in a chroot the error is present. Hmmm... So we need the patch to be able to build the packages for Debian, but it doesn't look like the problem is a big one. Regards Daniel
Download signature.asc
application/pgp-signature 836b

Message body not shown because it is not plain text.

CC: Daniel Lintott <daniel [...] serverb.co.uk>, bug-HTTP-Server-Simple [...] rt.cpan.org
Subject: Re: [rt.cpan.org #96086] [PATCH] Fix port already in use test failure
Date: Wed, 04 Feb 2015 09:04:27 +0100
To: debian-perl [...] lists.debian.org
From: Dominique Dumont <dod [...] debian.org>
Download (untitled) / with headers
text/plain 607b
On Tuesday 03 February 2015 15:51:32 Daniel Lintott wrote: Show quoted text
> (CC: debian-perl mailing list in case anyone has any ideas!)
Hmm, your patch (see below) seems to avoid a collision between Ipv4 and Ipv6 ports. Is that kind of collision possible ? All the best for my $class (@classes) { run_server_tests($class, AF_INET); + $PORT++; run_server_tests($class, AF_INET6); $PORT++; # don't reuse the port incase your bogus os doesn't release in time } -- https://github.com/dod38fr/ -o- http://search.cpan.org/~ddumont/ http://ddumont.wordpress.com/ -o- irc: dod at irc.debian.org
RT-Send-CC: debian-perl [...] lists.debian.org
Download (untitled) / with headers
text/plain 1.2k
On Tue Feb 03 10:51:47 2015, daniel@serverb.co.uk wrote: Show quoted text
> (CC: debian-perl mailing list in case anyone has any ideas!)
Kept CC so my guess ends up there Show quoted text
> > bind to *:45479: Address already in use at t/01live.t line 157. > > t/01live.t ......... 4/34 bind to *:43048: Address already in use at > > t/01live.t ......... 12/34 bind to *:43049: Address already in use at > > t/01live.t ......... 1/34 bind to *:42759: Address already in use at > > t/01live.t ......... 12/34 bind to *:42760: Address already in use at
Show quoted text
> Okay... So now where getting somewhere! Whenever the tests are run in > a chroot the error is present. > > Hmmm... So we need the patch to be able to build the packages for > Debian, but it doesn't look like the problem is a big one.
I'm pretty sure this is a chroot / ipv6 localhost problem. I'm surprised the patch fixes it. It should be trying to bind to localhost:43048 (or whatever ::1 is called) but since it's using *:43048 it's using fallback behavior instead. I fixed a bunch of chroot/localhost bugs around this by using the cpantesters smoke servers, but clearly not enough of them. I'll see if it's easily replicable locally on my Debian boxes/VM by using a chroot, which will make any solution simpler. -kevin


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.