mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrei Budnik <abud...@mesosphere.com>
Subject Re: Review Request 66668: Removed `destroyed` from `Container` struct in composing containerizer.
Date Wed, 23 May 2018 13:31:12 GMT


> On May 21, 2018, 1:21 p.m., Qian Zhang wrote:
> > src/slave/containerizer/composing.cpp
> > Lines 396-400 (original)
> > <https://reviews.apache.org/r/66668/diff/4/?file=2021203#file2021203line401>
> >
> >     Previously, in the case that `destroy-in-progress stopped an launch-in-progress`,
the `destroy()` will return `ContainerTermination()` which is set here. But now with this
implementation, it will return `None()` which is set by the underlying containerizer. This
seems not correct to me, in this case, the destroy should considered as succeeded (return
`ContainerTermination()`) rather than failed (return `None()`).
> 
> Andrei Budnik wrote:
>     Before https://reviews.apache.org/r/66510/ patch was committed, `destroy()` returned
`Future<bool>`. There was a reason to set a `true` to the `destroyed` promise, because
we successfully destroyed a container (in the case that destroy-in-progress stopped an launch-in-progress).
>     
>     >the destroy should considered as succeeded (return ContainerTermination()) rather
than failed (return None()).
>     
>     At the moment I don't think that a client should interpret the result of `destroy()`
as failed/succeeded relying on whether or not `Option<ContainerTermination>` is empty.
If there was no actual attempt to launch a container using an underlying containerizer, why
do we need to return some virtual `ContainerTermination`?
> 
> Greg Mann wrote:
>     Hm, so we don't have any callers who need to recognize the destroy-during-launch
case? If not, then I think this sounds OK to me, WDYT Qian? Andrei, if we decide to keep this
approach, could you update the comment on `destroy()` in the following patch to better reflect
what happens when it's called during container launch? https://reviews.apache.org/r/67130/
> 
> Qian Zhang wrote:
>     OK to me as well.

Updated comments:
https://reviews.apache.org/r/66668/diff/6-7/
https://reviews.apache.org/r/67130/diff/3-4/


- Andrei


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


On April 17, 2018, 3:23 p.m., Andrei Budnik wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/66668/
> -----------------------------------------------------------
> 
> (Updated April 17, 2018, 3:23 p.m.)
> 
> 
> Review request for mesos, Alexander Rukletsov, Greg Mann, Jie Yu, and Qian Zhang.
> 
> 
> Bugs: MESOS-8712
>     https://issues.apache.org/jira/browse/MESOS-8712
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Previously, we stored `destroyed` promise for each container and used
> it to guarantee that `destroy()` returns a non-empty value when the
> destroy-in-progress stops an launch-in-progress using the next
> containerizer. Since `wait()` and `destroy()` return the same
> `ContainerTermination` value when called with the same ContainerID
> argument, we can remove `destroyed` promise and add callbacks to
> clean up `containers_` map instead.
> 
> 
> Diffs
> -----
> 
>   src/slave/containerizer/composing.cpp 1fb79f53b48154ecbd3b0165b6a8002c871e6dce 
> 
> 
> Diff: https://reviews.apache.org/r/66668/diff/7/
> 
> 
> Testing
> -------
> 
> internal CI
> 
> 
> Thanks,
> 
> Andrei Budnik
> 
>


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