I wrote an HTTP spider and I wonder how to handle exceptions. I got
this exception.
\while I can install POE::Component::SSLify and fix *this* problem but
I am wondering about the
general problem. How am I supposed to catch exceptions?
I am not sure where was this exception thrown, I guess it was in a
call like this
POE::Kernel->post(
'ua',
'request',
'image_received',
HTTP::Request->new(GET => $url),
);
but I am not sure how to handle the exception in there?
regards
Gabor
=== 25253 === !!! Stopped child process (PID 25254) reaped when
POE::Kernel->run() is ready to return.
=== 25253 === !!! Stopped child process (PID 25257) reaped when
POE::Kernel->run() is ready to return.
=== 25253 === !!! Stopped child process (PID 25255) reaped when
POE::Kernel->run() is ready to return.
=== 25253 === !!! Stopped child process (PID 25258) reaped when
POE::Kernel->run() is ready to return.
=== 25253 === !!! Stopped child process (PID 25260) reaped when
POE::Kernel->run() is ready to return.
=== 25253 === !!! Stopped child process (PID 25261) reaped when
POE::Kernel->run() is ready to return.
=== 25253 === !!! At least one child process is still running when
POE::Kernel->run() is ready to return.
=== 25253 === !!! Be sure to use sig_child() to reap child processes.
=== 25253 === !!! In extreme cases, failure to reap child processes has
=== 25253 === !!! resulted in a slow 'fork bomb' that has halted systems.
There is no SSL support, please install POE::Component::SSLify at
/home/gabor/perl5/lib/perl5/POE/Component/Client/Keepalive.pm line
611.
(in cleanup) (25253) <us> must call select_read() from a running
session at /home/gabor/perl5/lib/perl5/POE/Kernel.pm line 2139
POE::Kernel::select_read('POE::Kernel=ARRAY(0x1e65998)',
'GLOB(0xd105cc0)') called at
/home/gabor/perl5/lib/perl5/POE/Wheel/ReadWrite.pm line 392
POE::Wheel::ReadWrite::DESTROY('POE::Wheel::ReadWrite=ARRAY(0xcc4bbd8)')
called at /home/gabor/perl5/lib/perl5/POE/Component/Connection/Keepalive.pm
line 42
eval {...} called at
/home/gabor/perl5/lib/perl5/POE/Component/Connection/Keepalive.pm line
42
POE::Component::Connection::Keepalive::DESTROY('POE::Component::Connection::Keepalive=ARRAY(0xd2871d0)')
called at /home/gabor/perl5/lib/perl5/POE/Component/Client/HTTP/Request.pm
line 599
eval {...} called at
/home/gabor/perl5/lib/perl5/POE/Component/Client/HTTP/Request.pm line
599
POE::Component::Client::HTTP::Request::DESTROY('POE::Component::Client::HTTP::Request=ARRAY(0xcc9a648)')
called at spider line 0
eval {...} called at spider line 0
(in cleanup) (25253) <us> must call select_read() from a running
session at /home/gabor/perl5/lib/perl5/POE/Kernel.pm line 2139
POE::Kernel::select_read('POE::Kernel=ARRAY(0x1e65998)',
'GLOB(0xcb9bb58)') called at
/home/gabor/perl5/lib/perl5/POE/Wheel/ReadWrite.pm line 392
POE::Wheel::ReadWrite::DESTROY('POE::Wheel::ReadWrite=ARRAY(0xe08b290)')
called at /home/gabor/perl5/lib/perl5/POE/Component/Connection/Keepalive.pm
line 42
eval {...} called at
/home/gabor/perl5/lib/perl5/POE/Component/Connection/Keepalive.pm line
42
POE::Component::Connection::Keepalive::DESTROY('POE::Component::Connection::Keepalive=ARRAY(0xde12b10)')
called at /home/gabor/perl5/lib/perl5/POE/Component/Client/HTTP/Request.pm
line 599
eval {...} called at
/home/gabor/perl5/lib/perl5/POE/Component/Client/HTTP/Request.pm line
599
POE::Component::Client::HTTP::Request::DESTROY('POE::Component::Client::HTTP::Request=ARRAY(0xcb99a10)')
called at spider line 0
eval {...} called at spider line 0
(in cleanup) (25253) <us> must call select_read() from a running
session at /home/gabor/perl5/lib/perl5/POE/Kernel.pm line 2139
POE::Kernel::select_read('POE::Kernel=ARRAY(0x1e65998)',
'GLOB(0xc785708)') called at
/home/gabor/perl5/lib/perl5/POE/Wheel/ReadWrite.pm line 392
POE::Wheel::ReadWrite::DESTROY('POE::Wheel::ReadWrite=ARRAY(0xe0c39f8)')
called at /home/gabor/perl5/lib/perl5/POE/Component/Connection/Keepalive.pm
line 42
eval {...} called at
/home/gabor/perl5/lib/perl5/POE/Component/Connection/Keepalive.pm line
42
POE::Component::Connection::Keepalive::DESTROY('POE::Component::Connection::Keepalive=ARRAY(0xe0b0bd0)')
called at /home/gabor/perl5/lib/perl5/POE/Component/Client/HTTP/Request.pm
line 599
eval {...} called at
/home/gabor/perl5/lib/perl5/POE/Component/Client/HTTP/Request.pm line
599
POE::Component::Client::HTTP::Request::DESTROY('POE::Component::Client::HTTP::Request=ARRAY(0xd95fac0)')
called at spider line 0
eval {...} called at spider line 0
(in cleanup) (25253) <us> must call select_read() from a running
session at /home/gabor/perl5/lib/perl5/POE/Kernel.pm line 2139
POE::Kernel::select_read('POE::Kernel=ARRAY(0x1e65998)',
'GLOB(0xc7af8b8)') called at
/home/gabor/perl5/lib/perl5/POE/Wheel/ReadWrite.pm line 392
POE::Wheel::ReadWrite::DESTROY('POE::Wheel::ReadWrite=ARRAY(0xd0b4e78)')
called at /home/gabor/perl5/lib/perl5/POE/Component/Connection/Keepalive.pm
line 42
eval {...} called at
/home/gabor/perl5/lib/perl5/POE/Component/Connection/Keepalive.pm line
42
POE::Component::Connection::Keepalive::DESTROY('POE::Component::Connection::Keepalive=ARRAY(0xcc1dd20)')
called at /home/gabor/perl5/lib/perl5/POE/Component/Client/HTTP/Request.pm
line 599
eval {...} called at
/home/gabor/perl5/lib/perl5/POE/Component/Client/HTTP/Request.pm line
599
POE::Component::Client::HTTP::Request::DESTROY('POE::Component::Client::HTTP::Request=ARRAY(0xcc9aac8)')
called at spider line 0
eval {...} called at spider line 0