Skip Menu |

This queue is for tickets about the Net-Async-HTTP CPAN distribution.

Report information
The Basics
Id: 98528
Status: new
Priority: 0/
Queue: Net-Async-HTTP

People
Owner: Nobody in particular
Requestors: leonerd-cpan [...] leonerd.org.uk
Cc:
AdminCc:

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



Subject: Raace between SSL connect failure and connection pipeline reuse
Using max_connections_per_host > 1. IO::Async::Future=HASH(0x377e388) is already done at /home/leo/lib/perl5/Net/Async/HTTP/Connection.pm line 115 and cannot be ->fail'ed at /home/leo/lib/perl5/Net/Async/HTTP.pm line 406. The log just before this reads: [Na:HTTP::Connection{localhost:8002,fd=14}<-Na:HTTP<-Na:Matrix] DONE remaining in-flight=0 [Na:HTTP::Connection{localhost:8002,fd=14}<-Na:HTTP<-Na:Matrix] READY pipelined ... I suspect therefore what happened was: 1. ->request starts a new connect attempt 2. Existing outstanding request finishes, hits READY pipelined 3. Existing now-idle connection gets reused for next request 4. $loop->connect now fails, attempting to fail the Future ->fail now dies because step 3 resolved it. -- Paul Evans