Skip Menu |

This queue is for tickets about the POE CPAN distribution.

Report information
The Basics
Id: 56154
Status: rejected
Priority: 0/
Queue: POE

People
Owner: Nobody in particular
Requestors: andy.jenkinson [...] ebi.ac.uk
Cc:
AdminCc:

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



Subject: POE error terminating parent process
Date: Wed, 31 Mar 2010 13:09:15 +0100
To: bug-POE [...] rt.cpan.org
From: Andy Jenkinson <andy.jenkinson [...] ebi.ac.uk>
Hi, I asked this on the list but got no response: I have some code based on the 'forking web server' example in the cookbook. Basically the problem is that sending a TERM signal to the parent process does not kill any of the child processes. Instead, I get the following warnings: <sg> Kernel now running in a different process (is=9012 was=9011). You must call call $poe_kernel->has_forked in the child process. ----- at /Library/Perl/5.10.0/POE/Resource/Signals.pm line 798 POE::Kernel::_data_sig_pipe_send('POE::Kernel', 'TERM') called at /Library/Perl/5.10.0/POE/Loop/PerlSignals.pm line 27 POE::Kernel::_loop_signal_handler_generic('TERM') called at /Library/Perl/5.10.0/POE/Loop/Select.pm line 205 eval {...} called at /Library/Perl/5.10.0/POE/Loop/Select.pm line 205 POE::Kernel::loop_do_timeslice('POE::Kernel=ARRAY(0x100ac9c50)') called at /Library/Perl/5.10.0/POE/Loop/Select.pm line 334 POE::Kernel::loop_run('POE::Kernel=ARRAY(0x100ac9c50)') called at /Library/Perl/5.10.0/POE/Kernel.pm line 1342 When this happens, _stop is never reached in the parent process (in this state, the parent would send a kill signal to its children). I believe this may be limited to recent versions of POE, as it does not occur on machines with older versions. The problem occurs on both linux and os x architectures. Cheers, Andy
The key line is: <sg> Kernel now running in a different process (is=9012 was=9011). You must call call $poe_kernel->has_forked in the child process. Please see perldoc POE::Kernel /has_forked. If anything, this is a bug in the cookbook example, not in POE.