Bug#708180: [rt.cpan.org #85308] applications die() because of SIGCHLD vs. SIGCLD confusion
p...@seamons.com wrote (on RT): I'm not sure why the name difference. But, either way, if there is going to now be a new name, then handling it with the: $SIG{$sig} = sub{ $Net::Server::SIG::_SIG{$sig} = 1; }; is a start, but if CLD is also necessary, then we'll need to just register both CHLD and CLD to handle children. Not much overhead - but it would handle all cases. But before I go fully down that road, can you try the above patched line on your system and see if you get proper behavior? Thank you. Paul -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#708180: [rt.cpan.org #85308] applications die() because of SIGCHLD vs. SIGCLD confusion
On Sat, May 18, 2013 at 11:12:48AM +0200, Xavier wrote: is a start, but if CLD is also necessary, then we'll need to just register both CHLD and CLD to handle children. Not much overhead - but it would handle all cases. As long as you have control over all Net::Server::SIG users, then sure, this is a possible solution (although IMHO inelegant). But before I go fully down that road, can you try the above patched line on your system and see if you get proper behavior? I tried it already before reporting the bug, and yes, it fixes it. /* Steinar */ -- Homepage: http://www.sesse.net/ -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#708180: [rt.cpan.org #85308] applications die() because of SIGCHLD vs. SIGCLD confusion
On Thu, May 16, 2013 at 05:58:14AM +0200, Xavier wrote: Likely the better solution would be to change that code to this: $SIG{$sig} = sub{ $Net::Server::SIG::_SIG{$sig} = 1; }; That way, perl remains consistent and whatever awry value is being returned on your platform is ignored. Maybe, but only if all callers are consistent in using either SIGCHLD or SIGCLD. If not, the signal handler will be overwritten, and then you are back to the same problem again. Unless that can never happen? I am a bit interested to know what platform you are running on. We have thousands of people running Net::Server on many platforms and you are the first to report the error. I personally have had some servers in use for over a decade, several getting millions of hits a month with spikes to hundreds of connections per second, but have not seen this issue. Debian wheezy, amd64 (that's Perl v5.14.2). My guess is that possibly, Perl changed the name of the signal delivered, which is why it hasn't happened before, but that's just a guess. /* Steinar */ -- Homepage: http://www.sesse.net/ -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org