> On Oct. 26, 2016, 9:43 p.m., Jiang Yan Xu wrote:
> > src/master/master.cpp, lines 6036-6037
> > <https://reviews.apache.org/r/53202/diff/1/?file=1546421#file1546421line6036>
> >
> >     Assuming frameworks are not partition-aware based on the agent verison 
> > doesn't feel right.
> >     
> >     Ultimately it doesn't seem to make a difference in terms of messages 
> > Mesos sends: if the framework is not connected, no update is sent in this 
> > method. Later when it reconnects and reconciles, Master checks its 
> > capability and decides: `(5) Task is unknown, slave is unreachable: 
> > TASK_UNREACHABLE` or `TASK_LOST` if the frameworks is not partition-aware.
> >     
> >     Would it make sense to set the state to `TASK_UNREACHABLE` in this 
> > case? Looks like the only differences it makes are:
> >     
> >     - - metrics: Regardless of framework capabilities, the agent is indeed 
> > unreachable: `TASK_UNREACHABLE` is more in line with the (1.1) master's 
> > logic and the metrics don't reflect 100% of what the master sends out 
> > anyways.
> >     - documentation: we set the state because it makes sense to the master 
> > and not by guessing the framework's capabilities. also worth-mentioning is 
> > the fact that this doesn't violate the API semantics: partition-awareness 
> > is checked at reconciliaton time.

I don't think either option is ideal. I opted for `TASK_LOST` because:

(a) sending `TASK_LOST` is still the default behavior; partition-awareness is 
an "experimental" feature in 1.1, and in any case is guarded behind a 
capability.
(b) if you have (very) old agents, you're more likely to have old frameworks 
that haven't enabled partition-awareness.


- Neil


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


On Oct. 26, 2016, 7:51 p.m., Neil Conway wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/53202/
> -----------------------------------------------------------
> 
> (Updated Oct. 26, 2016, 7:51 p.m.)
> 
> 
> Review request for mesos, Vinod Kone and Jiang Yan Xu.
> 
> 
> Bugs: MESOS-6483
>     https://issues.apache.org/jira/browse/MESOS-6483
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> We don't guarantee compatibility with pre-1.0 agents. However, since it
> is easy to avoid a CHECK failure in the master when an old agent
> re-registers, it seems worth doing so.
> 
> 
> Diffs
> -----
> 
>   src/master/master.cpp 23ddb995b4ad0fcdb589974308a2e81ececdad31 
> 
> Diff: https://reviews.apache.org/r/53202/diff/
> 
> 
> Testing
> -------
> 
> `make check`
> 
> Disabled the code that fills-in `frameworks.recovered`; verified that 
> `PartitionTest.DisconnectedFramework` dies with a `CHECK` failure if this RR 
> is not applied but passes this with RR applied.
> 
> 
> Thanks,
> 
> Neil Conway
> 
>

Reply via email to