[
https://issues.apache.org/jira/browse/MESOS-5306?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15265574#comment-15265574
]
Qian Zhang commented on MESOS-5306:
-----------------------------------
I see the preparation scripts will only be executed when we receives signal in
{{MesosContainerizerLaunch::execute()}}, and the signal will be sent from
{{MesosContainerizerProcess::exec()}} which will be called after
{{MesosContainerizerProcess::isolate()}}, so I guess the {{isolate()}} method
of the CNI isolator should always be called before the preparation scripts in
ContainerLaunchInfo.
> Mounting /etc/xxx files in CNI for command tasks has race condition.
> --------------------------------------------------------------------
>
> Key: MESOS-5306
> URL: https://issues.apache.org/jira/browse/MESOS-5306
> Project: Mesos
> Issue Type: Bug
> Reporter: Jie Yu
> Assignee: Jie Yu
> Fix For: 0.29.0
>
>
> This is because there's no ordering between the execution of the 'isolate()'
> method of the CNI isolator and the execution of the preparation scripts in
> ContainerLaunchInfo.
> For command tasks, currently, we do a recursive bind mount (<rootfs> ->
> <sandbox>/.rootfs) in the preparation script returned by the linux filesystem
> isolator (same as other volumes). The command executor will then pivot_root
> into <sandbox>/.rootfs.
> As a result, depending on the timing. the /etc/xxx files mounted at
> <rootfs>/etc/xxx might or might not be present in the rootfs for command
> tasks.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)