Hi all I'd like some advise on how to debug a POE application (a mid-sized web crawler) that is seemingly exiting sporadically without displaying any error conditions. The program runs randomly for 10 minutes ~ 4,5 hours, and then exists without showing any meaningful error message. through using TRACE_DEFAULT() and inserting a bunch of print statements, I've traced this down to circa line 924 of POE::Kernel: my $return; if (wantarray) { $return = [ $session->_invoke_state($source_session, $event, $etc, $file, $line, $fromstate) ]; } else { $return = $session->_invoke_state($source_session, $event, $etc, $file, $line, $fromstate); } The execution goes into the else cluase, but _invoke_state is never called!!! I added debug statements like so in POE::Kernel my $return; if (wantarray) { $return = [ $session->_invoke_state($source_session, $event, $etc, $file, $line, $fromstate) ]; } else { _warn("DEBUG(1): $session, $source_session, $event, $etc, $file, $line, $fromstate"); $return = $session->_invoke_state($source_session, $event, $etc, $file, $line, $fromstate); _warn("DEBUG(3): _invoke_state done"); } As well as sub _invoke_state { my ($self, $source_session, $event, $etc) = @_; _warn("DEBUG(2) _invoke_state"); But the execution never reaches DEBUG(2). I'm at a complete loss as to what to do now. Has anyone hit anything like this? As far as POE related modules go, I'm using POE - 0.3009 POE::Component::Client::HTTP - 0.65 POE::Component::Client::DNS - 0.98 Any help is appreciated. ---d