Uploaded image for project: 'Thrift'
  1. Thrift
  2. THRIFT-4065

Document Perl ForkingServer signal restriction imposed by THRIFT-3848 and remove unnecessary code

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.10.0
    • 0.11.0
    • Perl - Library
    • None
    • Ubuntu 14.04 LTS, Perl 5.18

    Description

      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().

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            jking3 James E. King III
            jking3 James E. King III
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment