It may have something to do with the new POE::Component::Resolver dependency via POE::Component::Client::Keepalive.
You're trying to trigger a shutdown by destroying a LWP::UserAgent::POE object. However, you don't have a DESTROY method that "shutdown"s PoCo::Client::HTTP. Without an explicit shutdown, I think KeepAlive is keeping sockets alive. -- Rocco Caputo <rcap...@pobox.com> On Jun 18, 2011, at 14:17, p...@perlmeister.com wrote: > Something must have changed in PoCo::Client::HTTP 0.943 leaving the > kernel blocking even if all requests have been processed. > > It occurs with a component using the (evil, I know!) run_one_timeslice() > method, namely > > http://cpansearch.perl.org/src/MSCHILLI/LWP-UserAgent-POE-0.03/POE.pm > > which then hangs in the test at > > > http://cpansearch.perl.org/src/MSCHILLI/LWP-UserAgent-POE-0.03/t/001Basic.t > > What I'm seeing is that even when the only HTTP request has been > processed, the kernel reports > > === 18510 === <rc> +----- GC test for session 1----- > <rc> | total refcnt : 2 > <rc> | event count : 0 > <rc> | post count : 0 > <rc> | child sessions: 2 > <rc> | handles in use: 0 > <rc> | aliases in use: 0 > <rc> | extra refs : 0 > <rc> | pid count : 0 > <rc> +--------------------------------------------------- > > and then blocks on the main CORE::select() with a timeout of roughly > 3600 seconds instead of terminating the main loop. > > Any ideas on what might have changed recently? > > -- Mike > > Mike Schilli > p...@perlmeister.com