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

Jie Yu commented on MESOS-5306:
-------------------------------

Good catch, [~qianzhang]! I thought the scripts are invoked before we do a read 
on the pipe.

But I think [r46807|https://reviews.apache.org/r/46807/] is still valuable 
because other isolators (e.g., the docker volume isolator, and the gpu 
isolator) might use the script to bind mount additional volumes. Since 
filesytem/linux isolator's script is the first to be invoked, any additional 
mounts from other isolators under the new rootfs will not be populated into the 
container.

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

Reply via email to