mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Qian Zhang <zhq527...@gmail.com>
Subject Re: Review Request 64978: Made task's volume directory visible in the /files endpoints.
Date Tue, 09 Jan 2018 14:32:31 GMT


> On Jan. 9, 2018, 8:04 a.m., Vinod Kone wrote:
> > src/slave/slave.cpp
> > Lines 9221-9246 (patched)
> > <https://reviews.apache.org/r/64978/diff/2/?file=1934306#file1934306line9226>
> >
> >     Kill this. See above comments.

The reason I did this change is, only doing detach in `removeExecutor` and `recoverExecutor`
can not handle a corner case: Say a default executor launches a large number of tasks (say
the number of tasks is greater than `MAX_COMPLETED_TASKS_PER_EXECUTOR`), and then all the
tasks finishes, so there will be some old tasks automatically removed from `Executor::completedTasks`
(since it is `boost::circular_buffer` with size `MAX_COMPLETED_TASKS_PER_EXECUTOR`). When
`removeExecutor` is called eventually, we will be missed to do the detach for those old tasks
since we can not find them anywhere, that is kind of leak.


- Qian


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64978/#review195000
-----------------------------------------------------------


On Jan. 9, 2018, 10:11 p.m., Qian Zhang wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/64978/
> -----------------------------------------------------------
> 
> (Updated Jan. 9, 2018, 10:11 p.m.)
> 
> 
> Review request for mesos, Benjamin Mahler, Gilbert Song, Jie Yu, and Vinod Kone.
> 
> 
> Bugs: MESOS-8279
>     https://issues.apache.org/jira/browse/MESOS-8279
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> In MESOS-7225, we made a task can access any volumes specified in its
> disk resources from its own sandbox by introducing a workaround to the
> default executor, i.e., add a `SANDBOX_PATH` volume with type `PARENT`
> to the corresponding nested container. It will be translated into a bind
> mount in the nested container's mount namespace, thus not visible in the
> host mount namespace, that means the task's volume directory can not be
> visible in Mesos UI since it operates in the host mount namespace.
> 
> In this patch, to make the task's volume directory visible in Mesos UI,
> we attached the executor's volume directory to it, so when users browse
> task's volume directory in Mesos UI, what they actually browse is the
> executor's volume directory. Note when calling `Files::attach()`, the
> third argument `authorized` is not specified, that is because it is
> already specified when we do the attach for the executor's sandbox and
> it is also applied to the executor's tasks.
> 
> 
> Diffs
> -----
> 
>   src/slave/slave.cpp aeb0fdaeda78f26de2ec790735bfa88c5be72850 
> 
> 
> Diff: https://reviews.apache.org/r/64978/diff/3/
> 
> 
> Testing
> -------
> 
> sudo make check
> 
> 
> Thanks,
> 
> Qian Zhang
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message