Hi Gregor, On 22/12/21 at 16:30 +0100, gregor herrmann wrote: > COntrol: tag -1 + unreproducible moreinfo > > On Tue, 21 Dec 2021 17:33:43 +0100, Lucas Nussbaum wrote: > > > Source: libnet-traceroute-perl > > Version: 1.15-2 > > Severity: serious > > Justification: FTBFS > > > > /<<PKGBUILDDIR>>/blib/lib/Net/Traceroute.pm:Net::Traceroute::debug_print:230: > > > Running in debug mode > > > /<<PKGBUILDDIR>>/blib/lib/Net/Traceroute.pm:Net::Traceroute::debug_print:294: > > > Performing traceroute > > > /<<PKGBUILDDIR>>/blib/lib/Net/Traceroute.pm:Net::Traceroute::debug_print:487: > > > $VAR1 = bless( { > > > 'debug' => 9, > > > 'stat' => 2, > > > 'host' => 'ip-10-84-232-242', > > > 'trace_program' => 'traceroute', > > > 'timeout' => 30 > > > }, 'Net::Traceroute' ); > > > No output from traceroute. Exec failure? at > > > /<<PKGBUILDDIR>>/blib/lib/Net/Traceroute.pm line 360. > > > # Looks like your test exited with 255 before it could output anything. > > > t/95-sys-traceroute.t ......... > > > 1..2 > > > Dubious, test returned 255 (wstat 65280, 0xff00) > > > Failed 2/2 subtests > > > Hi Lucas, > > thanks for your bug report. > > Yesterday evening, 3 of us in the Perl team could not reproduce this > failure locally. From looking at the test and the actual code, what > seems to happen is that `traceroute' does not produce _any_ output, > which is a bit surprising. > > Do you have any idea how this can happen in your test environment or > any information for us, what is special about it? > > > As a side note, the test itself is marked as TODO, i.e. expected to > fail, with a comment that it's fragile, so we might as well skip it > completely. - Oh, that comes from our own patch :) And the patch > headers mention #849933 and #980475. > > Still, seeing the code explode _before_ reaching this stage is > puzzling.
I tried it again and could reproduce it. According to execsnoop, what is executed is: perl 24798 24769 0 /usr/bin/perl t/95-sys-traceroute.t traceroute 24799 24798 0 /usr/sbin/traceroute -n ip-10-84-232-230 traceroute 24800 24798 0 /usr/sbin/traceroute -n ip-10-84-232-230 However according to exitsnoop, traceroute exits with exit code 2. I think that what happens is: 1/ the VM hostname is set to ip-10-84-232-230 (or ip-10-84-232-242 in the bug report) 2/ /etc/hosts is correctly configured to resolve that hostname: 127.0.1.1 ip-10-84-232-230.eu-central-1.compute.internal ip-10-84-232-230 3/ however, schroot does not copy /etc/hosts into the chroot. The content of /etc/hosts in the chroot does not include the line for 127.0.1.1. 4/ when the test suite runs traceroute on the machine's hostname, traceroute fails to resolve the hostname, and exits with exit code 2. 5/ for some reason, the test harness thinks the test exited with code 255. libnet-traceroute-perl seems to be the only package failing to build due to this condition, so it might be worth fixing in the package, even if one could argue that it's a bug in the build environment. Maybe tracerouting to 127.0.0.1 would be enough? Lucas