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


Fix it, then Ship it!





src/master/master.hpp
Lines 32 (patched)
<https://reviews.apache.org/r/68484/#comment291506>

    Let's leave a TODO here:
    ```
    // TODO(bevers): Remove this once we bump the minimum Boost version.
    ```



src/slave/slave.hpp
Lines 27 (patched)
<https://reviews.apache.org/r/68484/#comment291507>

    Let's just copy the comments here so the reader doesn't need to refer to 
another file and also leave a TODO.


- Chun-Hung Hsiao


On Aug. 24, 2018, 12:28 p.m., Benno Evers wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/68484/
> -----------------------------------------------------------
> 
> (Updated Aug. 24, 2018, 12:28 p.m.)
> 
> 
> Review request for mesos and Alexander Rukletsov.
> 
> 
> Bugs: MESOS-9177
>     https://issues.apache.org/jira/browse/MESOS-9177
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Boost.CircularBuffer includes optional debugging code that counts the
> number of currently existing iterators to the container. Up to Boost
> 1.62, this code was enabled by default.
> 
> However, the existing iterators were stored in a linked list that was
> updated without any synchronization, leading to potential segfaults
> when reading the same buffer from multiple threads.
> 
> Given that the Master stores the completed tasks for each framework
> in a circular buffer, and that this can be read from multiple threads
> when multiple batched requests to the `/state` endpoint are processed
> (introduced by MESOS-9122), we have to unconditionally disable Boost's
> debug mode to prevent possible segfaults.
> 
> 
> Diffs
> -----
> 
>   src/master/master.hpp dc0080b24f19b77a4de34ab24aece657726343b8 
>   src/slave/slave.hpp 0420109ac93e1249906c52437e5859c5ee033fb6 
> 
> 
> Diff: https://reviews.apache.org/r/68484/diff/2/
> 
> 
> Testing
> -------
> 
> * Compiled mesos master against boost 1.53 from 
> https://downloads.mesosphere.com/pkgpanda-artifact-cache/boost_1_53_0.tar.gz.
> * Wrote a script that can trigger a segfault by reading from a circular 
> buffer in parallel (pasted in the linked ticket) and verified that it crashes 
> mesos master.
> * Recompiled mesos with this patch applied.
> * Verified that the above script does not produce a segfault anymore.
> 
> 
> Thanks,
> 
> Benno Evers
> 
>

Reply via email to