You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2017/02/02 19:27:51 UTC
[jira] [Commented] (THRIFT-4065) Document Perl ForkingServer signal
restriction imposed by THRIFT-3848 and remove unnecessary code
[ https://issues.apache.org/jira/browse/THRIFT-4065?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15850361#comment-15850361 ]
ASF GitHub Bot commented on THRIFT-4065:
----------------------------------------
GitHub user jeking3 opened a pull request:
https://github.com/apache/thrift/pull/1176
THRIFT-4065 fix SIGCHLD handling for perl ForkingServer and document restrictions
This completes the work started in THRIFT-3848.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jeking3/thrift THRIFT-4065
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/thrift/pull/1176.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1176
----
commit 983e794efeb0b90f9c3dd17dce82a016ed85bc0f
Author: James E. King, III <ji...@simplivity.com>
Date: 2017-02-02T19:20:08Z
THRIFT-4065 fix SIGCHLD handling for perl ForkingServer and document restrictions
----
> Document Perl ForkingServer signal restriction imposed by THRIFT-3848 and remove unnecessary code
> -------------------------------------------------------------------------------------------------
>
> Key: THRIFT-4065
> URL: https://issues.apache.org/jira/browse/THRIFT-4065
> Project: Thrift
> Issue Type: Bug
> Components: Perl - Library
> Affects Versions: 0.10.0
> Environment: Ubuntu 14.04 LTS, Perl 5.18
> Reporter: James E. King, III
> Assignee: James E. King, III
>
> The Perl ForkingServer sets SIGCHLD to be ignores so that the forks can be automatically reaped, since the ForkingServer doesn't care about the child exit code.
> The fix for THRIFT-3848 was incomplete. It needs to reset the signal handler in the child to use a default SIGCHLD handler so any thrift handler implementation relying on SIGCHLD will execute properly.
> Also due to the fact that SIGCHLD is ignored in ForkingServer, the _collectChildren and call to waitpid() are unnecessary and can be removed, along with the children hash, from _parent().
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)