Skip Menu |

This queue is for tickets about the IO-Socket-IP CPAN distribution.

Report information
The Basics
Id: 116232
Status: open
Priority: 0/
Queue: IO-Socket-IP

People
Owner: Nobody in particular
Requestors: starlight.2016q3 [...] binnacle.cx
Cc:
AdminCc:

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



Subject: 'new' throws misleading 'croak' when open files limit exceeded
Date: Sat, 16 Jul 2016 22:53:08 -0400
To: bug-IO-Socket-IP [...] rt.cpan.org
From: starlight.2016q3 [...] binnacle.cx
While stress testing a high-capacity event-driven script that issues larger numbers of asynchronous Net::DNS::Resolver queries (in select-driven bgsend/bgread style) hit upon the default 1024 open files limit (ulimit -HSn). At line 936 of DNS-1.06/Resolver/Base.pm a call to IO::Socket::IP->new() fails with the error "Unrecognised protocol udp at Net/DNS/Resolver/Base.pm line 936" which is actually thrown from IO/Socket/IP-0.37.pm line 425 The error is misleading and without some previous experience I would not have quickly figured out the cause. Running the stress test after ulimit -HSn 10240 worked correctly and without error. The problem appears to be some kind of secondary consequence of the resource exhaustion, though I did not rigorously hunt down the precise chain of cause-and-effect. Possibly the call to socket() lacks complete error checking or contains a mistake.
On Sat Jul 16 23:02:17 2016, starlight.2016q3@binnacle.cx wrote: Show quoted text
> While stress testing a high-capacity event-driven > script that issues larger numbers of asynchronous > Net::DNS::Resolver queries (in select-driven > bgsend/bgread style) hit upon the default > 1024 open files limit (ulimit -HSn). > > At line 936 of DNS-1.06/Resolver/Base.pm a call > to IO::Socket::IP->new() fails with the error > > "Unrecognised protocol udp at Net/DNS/Resolver/Base.pm line 936" > > which is actually thrown from > > IO/Socket/IP-0.37.pm line 425 > > The error is misleading and without some previous > experience I would not have quickly figured out > the cause. Running the stress test after > > ulimit -HSn 10240 > > worked correctly and without error. The problem > appears to be some kind of secondary consequence > of the resource exhaustion, though I did not > rigorously hunt down the precise chain of > cause-and-effect. Possibly the call to socket() > lacks complete error checking or contains a mistake. >
I believe this may be a repeat of https://rt.cpan.org/Ticket/Display.html?id=115036 -- Paul Evans
Subject: Re: [rt.cpan.org #116232] 'new' throws misleading 'croak' when open files limit exceeded
Date: Tue, 02 Aug 2016 13:49:05 -0400
To: bug-IO-Socket-IP [...] rt.cpan.org
From: starlight.2016q3 [...] binnacle.cx
At 12:21 8/2/2016 -0400, you wrote: Show quoted text
> >I believe this may be a repeat of > > https://rt.cpan.org/Ticket/Display.html?id=115036
I agree they seem either closely related or are the same issue. But since the exhibited behavior is quite different perhaps both tickets should stay active until corrected.