[ 
https://issues.apache.org/jira/browse/AMBARI-4141?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry Lysnichenko updated AMBARI-4141:
---------------------------------------

    Attachment: AMBARI-4141.patch

By default, Python uses popen() flags that allow inheritance of open file 
descriptors (both open files and ports) by subprocesses after parent death. 
Python 3.x changes default behaviour.
http://bugs.python.org/issue3006
http://www.python.org/dev/peps/pep-0446/#inheritance-of-file-descriptors-on-unix

The attached patch sets appropriate flags when launching python subprocesses 
via PythonExecutor. I did not add these flags to PuppetExecutor, because it 
seems to work well without them. I guess that puppet internally uses correct 
flags for it's own subprocesses.


> Pluggable services: random daemons occupy agent's port
> ------------------------------------------------------
>
>                 Key: AMBARI-4141
>                 URL: https://issues.apache.org/jira/browse/AMBARI-4141
>             Project: Ambari
>          Issue Type: Task
>          Components: agent
>    Affects Versions: 1.5.0
>            Reporter: Dmitry Lysnichenko
>            Assignee: Dmitry Lysnichenko
>             Fix For: 1.5.0
>
>         Attachments: AMBARI-4141.patch
>
>
> After manual agent restart (upon cluster installation) agent often refuses to 
> start because of busy port 8670. Netstat gives something like 
> {code}
>  [root@vm-1 ~]# netstat -ntulp | grep 8670
> tcp        0      0 0.0.0.0:8670                0.0.0.0:*                   
> LISTEN      33423/gmond
> {code}
> I saw hive, hbase and gmond occupying this port. Did not notice such 
> behaviour when installing cluster using pure puppet.



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)

Reply via email to