[ 
https://issues.apache.org/jira/browse/MESOS-9804?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16865376#comment-16865376
 ] 

James Peach commented on MESOS-9804:
------------------------------------

This is not to be fixed.

The current code doesn't close after the fork, but does mark the inherited 
descriptors {{CLOEXEC}}. If we close these instead, then it would be harder for 
subprocess hooks to pass a fd into the child and use it in a child hook, which 
is a legitimate and useful pattern. If we don't close it, then we have the same 
semantics as today. So I think that the current code works correctly.

> Subprocess should close inherited file descriptors earlier.
> -----------------------------------------------------------
>
>                 Key: MESOS-9804
>                 URL: https://issues.apache.org/jira/browse/MESOS-9804
>             Project: Mesos
>          Issue Type: Improvement
>          Components: libprocess
>            Reporter: James Peach
>            Priority: Major
>
> The libprocess {{subprocess}} API doesn't close the file descriptors that are 
> inherited across fork until after applying the child hooks. This means that 
> the inherited descriptors can remain open for much longer than you expect, 
> since parent and child hooks both need to be scheduled and run.
> We should move the file descriptor closing as early as possible in the child. 
> We might also consider having the child write a byte back to the parent so 
> that we have a guaranteed synchronization point.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to