Re: Review Request 65253: Fixed dropped events on the master operator API stream.

2018-01-22 Thread Vinod Kone

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


Ship it!




Ship It!

- Vinod Kone


On Jan. 22, 2018, 11:36 p.m., Greg Mann wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/65253/
> ---
> 
> (Updated Jan. 22, 2018, 11:36 p.m.)
> 
> 
> Review request for mesos, Benjamin Hindman, Benjamin Mahler, and Vinod Kone.
> 
> 
> Bugs: MESOS-8469
> https://issues.apache.org/jira/browse/MESOS-8469
> 
> 
> Repository: mesos
> 
> 
> Description
> ---
> 
> The master's `Subscribers::send()` call path previously accessed
> event-related master state after an asynchronous call. Thus, if
> that state changed after the call to `Subscribers::send()` but
> before the event was actually sent, messages could be dropped.
> 
> This issue was observed when a TASK_KILLED update failed to be
> sent on an operator's stream because the task was removed from
> master state in between the aforementioned async calls.
> 
> This patch updates that call path to capture a shared copy of
> event-related metadata so that the asynchronous calls have a
> consistent view of the master's state at the time of the event.
> 
> 
> Diffs
> -
> 
>   src/master/master.hpp 05136781b6b1539f37c283e8127e4bafb187a0d1 
>   src/master/master.cpp 3af96b1d2024ab1b951537ebc6bbc225cfa9cc88 
> 
> 
> Diff: https://reviews.apache.org/r/65253/diff/5/
> 
> 
> Testing
> ---
> 
> make check
> 
> 
> Thanks,
> 
> Greg Mann
> 
>



Re: Review Request 65253: Fixed dropped events on the master operator API stream.

2018-01-22 Thread Greg Mann

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

(Updated Jan. 22, 2018, 11:36 p.m.)


Review request for mesos, Benjamin Hindman, Benjamin Mahler, and Vinod Kone.


Changes
---

Addressed BenM's comments.


Summary (updated)
-

Fixed dropped events on the master operator API stream.


Bugs: MESOS-8469
https://issues.apache.org/jira/browse/MESOS-8469


Repository: mesos


Description (updated)
---

The master's `Subscribers::send()` call path previously accessed
event-related master state after an asynchronous call. Thus, if
that state changed after the call to `Subscribers::send()` but
before the event was actually sent, messages could be dropped.

This issue was observed when a TASK_KILLED update failed to be
sent on an operator's stream because the task was removed from
master state in between the aforementioned async calls.

This patch updates that call path to capture a shared copy of
event-related metadata so that the asynchronous calls have a
consistent view of the master's state at the time of the event.


Diffs (updated)
-

  src/master/master.hpp 05136781b6b1539f37c283e8127e4bafb187a0d1 
  src/master/master.cpp 3af96b1d2024ab1b951537ebc6bbc225cfa9cc88 


Diff: https://reviews.apache.org/r/65253/diff/5/

Changes: https://reviews.apache.org/r/65253/diff/4-5/


Testing
---

make check


Thanks,

Greg Mann