toddr / Net-Daemon

Read-only release history for Net-Daemon
http://metacpan.org/release/Net-Daemon
0 stars 0 forks source link

t/ithreadm.t hang/fail on darwin [rt.cpan.org #18256] #11

Closed toddr closed 4 years ago

toddr commented 4 years ago

Migrated from rt.cpan.org#18256 (status was 'open')

Requestors:

Attachments:

From cpan@clotho.com on 2006-03-20 18:32:32 :

The t/ithreadm.t test hangs or fails on darwin (Mac OS X).  I tried
running tests several times and got different results each time:

=== Run 1 ===
(via CPANPLUS v0.061)

t/ithreadm......Child 0: Error while reading: 0 () at t/ithreadm.t line
47, <GEN1> line 7.
Child 1: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 96.
Child 2: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 2.
Child 3: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 34.
Child 5: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 126.
Child 6: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 12.
Child 8: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 415.

=== Run 2 ===
(via CPANPLUS v0.061)

t/ithreadm......Child 2: Error while reading: 0 (Connection reset by
peer) at t/ithreadm.t line 47, <GEN1> line 1.
Child 3: Error while reading: 0 (Connection reset by peer) at
t/ithreadm.t line 47, <GEN1> line 22.
Child 4: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 1.
Child 5: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 16.
Child 6: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 23.
Child 9: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 47.

=== Run 3 ===
(by hand, "perl -Ilib t/ithreadm.t"

Starting server: perl -Iblib/lib -Iblib/arch t/server --mode=ithreads
logfile=stderr debug
1..10
Child 1: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 8.
Child 3: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 2.
Child 4: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 22.
Child 6: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 11.
ok 1
not ok 2
ok 3
not ok 4
not ok 5
ok 6
not ok 7
Child 7: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 1.
not ok 8
ok 9
ok 10
Terminating server.

=== Run 3 ===
(by hand, "perl -Ilib t/ithreadm.t"

Starting server: perl -Iblib/lib -Iblib/arch t/server --mode=ithreads
logfile=stderr debug
1..10
Child 1: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 3.
Child 2: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 15.
Child 3: Error while reading: 0 (Connection reset by peer) at
t/ithreadm.t line 47, <GEN1> line 51.
Child 4: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 56.
Child 5: Error while reading: 0 (Connection reset by peer) at
t/ithreadm.t line 47, <GEN1> line 34.
Child 6: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 21.
ok 1
not ok 2
not ok 3
not ok 4
not ok 5
not ok 6
not ok 7
Child 8: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 10.
Child 9: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 7.
ok 8
not ok 9
not ok 10
Terminating server.

=== Run 5 ===
(by hand, "perl -Ilib t/ithreadm.t"

Starting server: perl -Iblib/lib -Iblib/arch t/server --mode=ithreads
logfile=stderr debug
1..10
Child 3: Error while reading: 0 (Connection reset by peer) at
t/ithreadm.t line 47, <GEN1> line 1.
Child 4: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 1.
Child 6: Error while reading: 0 (Connection reset by peer) at
t/ithreadm.t line 47, <GEN1> line 1.
ok 1
ok 2
ok 3
not ok 4
not ok 5
Alarm clock

My Perl is Apple's build of 5.8.6 ("darwin-thread-multi-2level") on OS X
10.4.5.

Note, but perhaps not relevant: this platform has odd timeout behavior
on abruptly closed ports -- servers sometimes can't re-bind to ports for
25-40 seconds after an unexpected close.

  --Chris

From m.nooning@comcast.net on 2007-05-23 12:52:21 :

Fixed in Net-Daemon/Net-Daemon-0.40.tar.gz which is now on CPAN

From mnooning@cpan.org on 2007-05-23 17:55:52 :

I do not have a Darwin machine to test this on, but it should work
(famous last words).

Fixed in Net-Daemon-0.40 and Net-Daemon-0.41

From chris+rt@chrisdolan.net on 2007-05-24 02:10:47 :

On Wed May 23 13:55:52 2007, MNOONING wrote:
> I do not have a Darwin machine to test this on, but it should work
> (famous last words).
> 
> Fixed in Net-Daemon-0.40 and Net-Daemon-0.41

I'm sorry to be the bearer of bad news, but it still fails on OSX
10.4.9, perl 5.8.6.  Are there any additional diagnostics I can provide,
or tests I can run for you?

Below is the output of two runs.  The first is unmodified code.  The
second is with some additional diagnostics enabled by hacking
t/ithreadm.t and t/server.  However, I can't make any sense of the
errors after reading code for 20 minutes...

Chris

% perl -Mblib t/ithreadm.t 
Starting server: perl -Iblib/lib -Iblib/arch t/server --mode=ithreads
logfile=stderr debug
1..10
Child 0: Error while reading: 0 (Connection reset by peer) at
t/ithreadm.t line 47, <GEN1> line 1.
Child 1: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 1.
Child 3: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 835.
Child 4: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 796.
not ok 1
not ok 2
ok 3
not ok 4
not ok 5
ok 6
ok 7
ok 8
ok 9
ok 10
Terminating server.

% perl -Mblib t/ithreadm.t
Starting server: perl -w -Mblib t/server --mode=ithreads
--logfile=stderr --debug
1..10
Wed May 23 20:57:38 2007 debug, 0, Server starting in operation mode
ithreads
Wed May 23 20:57:38 2007 debug, 0, Created ndtest.prt with port 56914

Wed May 23 20:57:38 2007 notice, 0, Server starting
server on port 56914
Spawning child 0.
Wed May 23 20:57:39 2007 debug, 0, Connection from 127.0.0.1, port 56915
Wed May 23 20:57:39 2007 debug, 0, Child clone: Multiplier=HASH(0x1828c9c)

Wed May 23 20:57:40 2007 debug, 1, New child starting
(Multiplier=HASH(0x18a6c70)).
Wed May 23 20:57:40 2007 debug, 1, Accepting client from 127.0.0.1, port
56915
Wed May 23 20:57:40 2007 debug, 1, Accepting client
Spawning child 1.
Wed May 23 20:57:40 2007 debug, 1, Child terminating.
Wed May 23 20:57:40 2007 debug, 0, Connection from 127.0.0.1, port 56916
Wed May 23 20:57:40 2007 debug, 0, Child clone: Multiplier=HASH(0x1828ca8)

Spawning child 2.
Wed May 23 20:57:40 2007 debug, 2, New child starting
(Multiplier=HASH(0x194098c)).
Wed May 23 20:57:40 2007 debug, 2, Accepting client from 127.0.0.1, port
56916
Wed May 23 20:57:40 2007 debug, 2, Accepting client
Wed May 23 20:57:40 2007 debug, 2, Child terminating.
Child 1: Error while reading: 0 (Connection reset by peer), iter 532 at
t/ithreadm.t line 48, <GEN1> line 532.
Wed May 23 20:57:40 2007 debug, 0, Connection from 127.0.0.1, port 56917
Wed May 23 20:57:40 2007 debug, 0, Child clone: Multiplier=HASH(0x1828c30)

Spawning child 3.
Wed May 23 20:57:40 2007 debug, 3, New child starting
(Multiplier=HASH(0x19dab8c)).
Wed May 23 20:57:40 2007 debug, 3, Accepting client from 127.0.0.1, port
56917
Wed May 23 20:57:40 2007 debug, 3, Accepting client
Wed May 23 20:57:40 2007 debug, 3, Child terminating.
Wed May 23 20:57:41 2007 debug, 0, Connection from 127.0.0.1, port 56918
Wed May 23 20:57:41 2007 debug, 0, Child clone: Multiplier=HASH(0x189d9cc)

Spawning child 4.
Wed May 23 20:57:41 2007 debug, 4, New child starting
(Multiplier=HASH(0x1a7418c)).
Wed May 23 20:57:41 2007 debug, 4, Accepting client from 127.0.0.1, port
56918
Wed May 23 20:57:41 2007 debug, 4, Accepting client
Wed May 23 20:57:41 2007 debug, 4, Child terminating.
Child 3: Error while reading: 0 (Connection reset by peer), iter 1 at
t/ithreadm.t line 48, <GEN1> line 1.
Wed May 23 20:57:41 2007 debug, 0, Connection from 127.0.0.1, port 56919
Wed May 23 20:57:41 2007 debug, 0, Child clone: Multiplier=HASH(0x1828c9c)

Spawning child 5.
Wed May 23 20:57:41 2007 debug, 5, New child starting
(Multiplier=HASH(0x1b0e78c)).
Wed May 23 20:57:41 2007 debug, 5, Accepting client from 127.0.0.1, port
56919
Wed May 23 20:57:41 2007 debug, 5, Accepting client
Wed May 23 20:57:41 2007 debug, 5, Child terminating.
Wed May 23 20:57:41 2007 debug, 0, Connection from 127.0.0.1, port 56920
Wed May 23 20:57:41 2007 debug, 0, Child clone: Multiplier=HASH(0x1828ca8)

Spawning child 6.
Wed May 23 20:57:41 2007 debug, 6, New child starting
(Multiplier=HASH(0x1ba818c)).
Wed May 23 20:57:41 2007 debug, 6, Accepting client from 127.0.0.1, port
56920
Wed May 23 20:57:41 2007 debug, 6, Accepting client
Wed May 23 20:57:42 2007 debug, 6, Child terminating.
Spawning child 7.
Wed May 23 20:57:42 2007 debug, 0, Connection from 127.0.0.1, port 56921
Wed May 23 20:57:42 2007 debug, 0, Child clone: Multiplier=HASH(0x1828c30)

Wed May 23 20:57:42 2007 debug, 7, New child starting
(Multiplier=HASH(0x1c4298c)).
Wed May 23 20:57:42 2007 debug, 7, Accepting client from 127.0.0.1, port
56921
Wed May 23 20:57:42 2007 debug, 7, Accepting client
Wed May 23 20:57:42 2007 debug, 7, Child terminating.
Child 6: Error while reading: 0 (Connection reset by peer), iter 1 at
t/ithreadm.t line 48, <GEN1> line 1.
Spawning child 8.
Wed May 23 20:57:42 2007 debug, 0, Connection from 127.0.0.1, port 56922
Wed May 23 20:57:42 2007 debug, 0, Child clone: Multiplier=HASH(0x189d9cc)

Wed May 23 20:57:42 2007 debug, 8, New child starting
(Multiplier=HASH(0x1cdc58c)).
Wed May 23 20:57:42 2007 debug, 8, Accepting client from 127.0.0.1, port
56922
Wed May 23 20:57:42 2007 debug, 8, Accepting client
Wed May 23 20:57:42 2007 debug, 8, Child terminating.
Wed May 23 20:57:42 2007 debug, 0, Connection from 127.0.0.1, port 56923
Wed May 23 20:57:42 2007 debug, 0, Child clone: Multiplier=HASH(0x1828c9c)

Spawning child 9.
Child 7: Error while reading: 0 (), iter 874 at t/ithreadm.t line 48,
<GEN1> line 874.
Wed May 23 20:57:42 2007 debug, 9, New child starting
(Multiplier=HASH(0x1d76d8c)).
Wed May 23 20:57:42 2007 debug, 9, Accepting client from 127.0.0.1, port
56923
Wed May 23 20:57:42 2007 debug, 9, Accepting client
Wed May 23 20:57:43 2007 debug, 0, Connection from 127.0.0.1, port 56924
Wed May 23 20:57:43 2007 debug, 0, Child clone: Multiplier=HASH(0x1828ca8)

ok 1
Wed May 23 20:57:43 2007 debug, 9, Child terminating.
not ok 2
ok 3
Wed May 23 20:57:43 2007 debug, 10, New child starting
(Multiplier=HASH(0x1e1198c)).
Wed May 23 20:57:43 2007 debug, 10, Accepting client from 127.0.0.1,
port 56924
Wed May 23 20:57:43 2007 debug, 10, Accepting client
Wed May 23 20:57:43 2007 debug, 10, Child terminating.
Child 9: Error while reading: 0 (), iter 590 at t/ithreadm.t line 48,
<GEN1> line 590.
not ok 4
ok 5
ok 6
not ok 7
not ok 8
ok 9
not ok 10
Terminating server.

From m.nooning@comcast.net on 2007-05-24 13:12:35 :

Thanks for the work.
ithreadm.t is only a little over 100 lines.  Please add ":pid is $$:" to
your print statements, run it again, and post the results and attach
ithreadm.t.

Thanks
M. Nooning

From m.nooning@comcast.net on 2007-05-24 13:54:37 :

On second thought, ...

Obviously line 47 is within sub ReadWrite.  ReadWrite is being called
from sub MyChild where $fh got its value from these lines:

    my $fh = IO::Socket::INET->new('PeerAddr' => '127.0.0.1',
                       'PeerPort' => $port);

I can see from other documentation that the invocation for $fh, as well
as $fh->getline(), are being called correctly.  The error seems to be in
the Socket module, which is where I think getline() is defined.  Please
make sure you have the latest IO::Socket.  INET inherits the getline()
from Socket.  Or is it from IO?  In any case, please make sure you have
the latest of those modules since getline() seems to be coming back
undefined to Net::Daemon.

Here is my reasoning.

If the parameter $fh as received by ReadWrite was not valid it would be
dieing at line 44.  Then the line
     my $line = $fh->getline();
is the culprit.  The question is, what is happening in getline?

I would like to see what the successful lines look like, so please
change the code around the said line to this:
     print STDERR ("# PID $$ ref fh is ", ref($fh), "\n");
     my $line = $fh->getline();
     if ( $defined($line) ) {
        print STDERR ("# line is defined :$line:\n");
     } else {
        print STDERR ("# line is NOT defined :$line:\n");
     }

Um, one more thing.  Right after the MyChild line 

    my $fh = IO::Socket::INET->new ....
please add
    print STDERR ("PID $$ port is $port\n");

Thanks
M. Nooning

From chris@chrisdolan.net on 2007-05-25 02:00:35 :

Malcolm,

I confirmed that I already have the latest IO::Socket (v1.30) and  
IO::Socket::INET (v1.31).  As for Socket, I get this message:

[ERROR] The core Perl 5.008006 module 'Socket' can only be upgraded  
from 1.77 to 1.78 by Perl itself (perl-5.8.8.tar.gz). Aborting install.

It's worth pointing out that sometimes the failures I witnessed  
happened on the first iteration, but sometimes later (e.g. in my  
report yesterday, one thread failed on iteration 532 of 1000;   
Today's report shows similar unpredictability).  Failures on  
iteration 1 are the most common, but other numbers appear  
sporadically.  Attached are two files: a diff showing my hacked t/ 
server and t/ithreadm.t, and a log of one output run.

Thanks for continuing the investigation.  At some point, though, we  
should consider just saying that threading on Mac perl5.8.6 may be  
unreliable.

Chris

--
Chris Dolan, Equilibrious LLC, http://equilibrious.net/
Public key: http://chrisdolan.net/public.key
vCard: http://chrisdolan.net/ChrisDolan.vcf

From m.nooning@comcast.net on 2007-05-25 02:51:45 :

At http://testers.cpan.org/show/Net-Daemon.html I see the pass/fail
Darwin items below. 

0.37 110801  PASS 5.8.1 on Darwin 6.8 (darwin)

0.38 252567  PASS 5.8.7 on Darwin 8.2.0 (darwin-multi-2level-64int)
0.38 251792  FAIL 5.8.7 on Darwin 8.2.0 (darwin-thread-multi-2level)
0.38 243259  FAIL 5.8.6 on Darwin 8.0 (darwin-thread-multi-2level)
0.38 168215  PASS 5.6.0 on Darwin 6.0 (darwin)
0.38 110892  PASS 5.8.1 on Darwin 6.8 (darwin)
0.38 110801  PASS 5.8.1 on Darwin 6.8 (darwin)

0.39 481598  PASS 5.8.8 on Darwin 8.9.1 (darwin-2level)

As you can see, the only two failures were with a machine like yours,
"darwin-thread-multi-2level".  I don't know what to make of this since I
don't know Darwin, and I certainly do not know one Darwin version from
another.  Ouch!

Right now you are the only one to test on a Darwin machine with
Net::Daemon 0.41.  I am hoping there will soon be more CPAN testers with
Darwin, specifically machines like yours, testing the 0.41 module.  If
they consistently pass, or consistently fail, that will tell us
something.  Until then I will have to hope to get help from elsewhere.

Thanks

From chris@chrisdolan.net on 2007-05-25 03:53:53 :

On May 24, 2007, at 9:51 PM, Malcolm Nooning via RT wrote:

> <URL: http://rt.cpan.org/Ticket/Display.html?id=18256 >
>
> At http://testers.cpan.org/show/Net-Daemon.html I see the pass/fail
> Darwin items below.
>
> 0.37 110801  PASS 5.8.1 on Darwin 6.8 (darwin)
>
> 0.38 252567  PASS 5.8.7 on Darwin 8.2.0 (darwin-multi-2level-64int)
> 0.38 251792  FAIL 5.8.7 on Darwin 8.2.0 (darwin-thread-multi-2level)
> 0.38 243259  FAIL 5.8.6 on Darwin 8.0 (darwin-thread-multi-2level)
> 0.38 168215  PASS 5.6.0 on Darwin 6.0 (darwin)
> 0.38 110892  PASS 5.8.1 on Darwin 6.8 (darwin)
> 0.38 110801  PASS 5.8.1 on Darwin 6.8 (darwin)
>
> 0.39 481598  PASS 5.8.8 on Darwin 8.9.1 (darwin-2level)
>
> As you can see, the only two failures were with a machine like yours,
> "darwin-thread-multi-2level".  I don't know what to make of this  
> since I
> don't know Darwin, and I certainly do not know one Darwin version from
> another.  Ouch!
>
> Right now you are the only one to test on a Darwin machine with
> Net::Daemon 0.41.  I am hoping there will soon be more CPAN testers  
> with
> Darwin, specifically machines like yours, testing the 0.41 module.  If
> they consistently pass, or consistently fail, that will tell us
> something.  Until then I will have to hope to get help from elsewhere.

Interesting.  Darwin is the open-source kernel of Mac OS X, and its  
version number closely parallels the OS X version number.  To give a  
little context:

   Mac OS X 10.0.x "Cheetah" ( == darwin 1.3.x)  shipped with perl  
5.6.0     in 2001
   Mac OS X 10.1.x "Puma"    ( == darwin 5.x)    shipped with perl  
5.6.0     in 2001
   Mac OS X 10.2.x "Jaguar"  ( == darwin 6.x)    shipped with perl  
5.6.0     in 2002
   Mac OS X 10.3.x "Panther" ( == darwin 7.x)    shipped with perl  
5.8.1-RC3 in 2003
   Mac OS X 10.4.x "Tiger"   ( == darwin 8.x)    shipped with perl  
5.8.6     in 2005
   Mac OS X 10.5.x "Leopard" ( == darwin 9.x?) will ship with perl  
5.8.8     in 2007

"2level" refers to a C-compiler namespace setting used to build  
perl.  I don't recall what the "multi" means.

If you see any versions other than those, it's a non-Apple build.

Chris

--
Chris Dolan, Equilibrious LLC, http://equilibrious.net/
Public key: http://chrisdolan.net/public.key
vCard: http://chrisdolan.net/ChrisDolan.vcf

From m.nooning@comcast.net on 2007-05-25 14:08:13 :

I have a feeling it is not Darwin related.  A search for "cpan testers
net::daemon" shows seven PASS four FAIL test runs.  There is something
wrong with Net::Daemon.

I am a co-maintainer because I put together a some patches to fix things
I could find by putting in a lot of print statements and tracing through
the code.  That, and the fact that it had not worked on Windows for
three years and I am on a Windows machine.  The print statement and
backtracing approach only gets one but so far.  In reality I have never
seen any of this code before.  In addition, I've never read up on
threads programming.  I would like to be more helpful but there is too
much I do not know in this subject area.

I wrote to the original author and asked him to look at the last few bugs.

Thanks

From m.nooning@comcast.net on 2007-05-26 18:30:37 :

Again, I am hoping the original author, or someone with a threads
programming background, will add some information here.  In the
meanwhile someone else wrote me that they are getting similar symptoms
on a Darwin machine, which I will paste bits and pieces of below.

------------------ paste bits and pieces 
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
 Platform:
   osname=darwin, osvers=8.8.0, archname=darwin-thread-multi-2level
   uname='darwin snowcrash 8.8.0 darwin kernel version 8.8.0: fri sep
8 17:18:57 pdt 2006; root:xnu-792.12.6.obj~1release_ppc power
macintosh powerpc

...
...

t/ithreadm......Child 1: Error while reading: 0 () at t/ithreadm.t
line 47, <GEN1> line 575.
Child 2: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 428.
Child 3: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 616.
... ... 
etcetera, etcetera, etcetera
------------------ end paste bits and pieces

BTW: I posted "Where does <GEN1> come from?" on perlmonks.org and got an
interesting answer.  I paste their answers below for lack of anything
better to say about the GEN messages.  

From perlfunc for die:
    If the last element of LIST does not end in a newline, the current
script line number and input line number (if any) are also printed, and
a newline is supplied. Note that the ``input line number'' (also known
as ``chunk'') is subject to whatever notion of ``line'' happens to be
currently in effect, and is also available as the special variable $.. 

...

It is a test file from Net::Daemon which uses IO::Socket so I'd bet
it's just read from the second anonymous glob generated for a socket
(the first would have been named GEN0). You can get the same handle
names yourself with gensym from the core Symbol module.
   --- 
It is the line number of the most recently opened filehandle.

Here's a (slightly contrived) example:

#!/usr/bin/perl

use strict;
use warnings;

use FileHandle;

my $iam = $0;
my $fh = new FileHandle;
open($fh, "<", $iam) or die "Can't open myself:  '$iam' ($!)\n";

my $cnt = 15;
while (my $line = <$fh>) {
    chomp $line;
    printf "%2d:  %s\n", (10 / $cnt--), $line;
}

When saved as the file "mytest", and run, it errors out on the 15th
line, where a division by zero error occurs:

Illegal division by zero at mytest line 15, <GEN0> line 16.

From mnooning@cpan.org on 2007-07-26 01:30:47 :

Please try the latest version, 0.43.  

Per the CPAN testers at http://testers.cpan.org/show/Net-Daemon.html 
the Net::Daemon package passes on all of the machines tested, but Darwin
is not one of them that was tried.

Does it still fail?

Thanks

From chris+rt@chrisdolan.net on 2007-07-26 02:53:47 :

On Wed Jul 25 21:30:47 2007, MNOONING wrote:
> Please try the latest version, 0.43.  
> ...
> Does it still fail?

Yes, it still fails.

t/base..........ok
t/config........ok
t/fork..........ok
t/forkm.........ok
t/ithread.......Perl exited with active threads:
        0 running and unjoined
        1 finished and unjoined
        0 running and detached
ok
t/ithreadm......Child 1: Error while reading: 0 (Connection reset by
peer) at t/ithreadm.t line 47, <GEN1> line 1.
Child 3: Error while reading: 0 () at t/ithreadm.t line 47, <GEN1> line 818.
Child 5: Error while reading: 0 (Connection reset by peer) at
t/ithreadm.t line 47, <GEN1> line 1.
Child 6: Error while reading: 0 (Connection reset by peer) at
t/ithreadm.t line 47, <GEN1> line 1.
Child 7: Error while reading: 0 (Connection reset by peer) at
t/ithreadm.t line 47, <GEN1> line 1.
FAILED tests 2, 4, 6-8
        Failed 5/10 tests, 50.00% okay
t/loop-child....ok
t/loop..........ok
t/single........ok
t/thread........skipped
        all skipped: no reason given
t/threadm.......ok
t/unix..........ok
Failed Test  Stat Wstat Total Fail  List of Failed
-------------------------------------------------------------------------------
t/ithreadm.t               10    5  2 4 6-8

From mnooning@cpan.org on 2007-07-31 00:38:11 :

Arrrrrrgh!
To tell you the truth, I am kind of at a loss as to avenues of approach
to fix this for Darwin.  

Looking up "cpan testers net::daemon" reveals 
     0.43 (32 PASSes, 2 UNKNOWNs)

which means it works for all of the other platforms tried.  What is it
about Darwin that is different?.  If it failed on more platforms it
would probably be easier to track down.

Unless someone else comes up with some ideas, this will probably not see
much progress.  That is a killer as far as platform independence is
concerned.  I will just have to give this more thought.

Thanks

From chris+rt@chrisdolan.net on 2007-07-31 04:41:58 :

I agree, it's confusing and frustrating and I too am stumped.  I just
tried it with a third-party build of Perl 5.8.8 (intead of Apple's build
of 5.8.6) and get similar errors.  I recommend that you just mark this
bug as "stalled". :-(

Chris

On Mon Jul 30 20:38:11 2007, MNOONING wrote:
> Arrrrrrgh!
> To tell you the truth, I am kind of at a loss as to avenues of approach
> to fix this for Darwin.  
> 
> Looking up "cpan testers net::daemon" reveals 
>      0.43 (32 PASSes, 2 UNKNOWNs)
> 
> which means it works for all of the other platforms tried.  What is it
> about Darwin that is different?.  If it failed on more platforms it
> would probably be easier to track down.
> 
> Unless someone else comes up with some ideas, this will probably not see
> much progress.  That is a killer as far as platform independence is
> concerned.  I will just have to give this more thought.
> 
> Thanks
toddr commented 4 years ago

I cannot reproduce this problem with CI or on my Mac. I'm closing this for now. See also #19