> On June 29, 2014, 11:44 p.m., Adam B wrote:
> > src/master/master.hpp, lines 852-854
> > <https://reviews.apache.org/r/23147/diff/1/?file=620067#file620067line852>
> >
> >     // We mark a slave 'inactive' ...
> >     bool active;
> 
> Alexandra Sava wrote:
>     I have some concerns in changing this. As the comment says, a slave is 
> marked as 'disconnected' when it is checkpointing. I would like to use the 
> 'deactive' key for slaves for which no resource offers are being sent (this 
> is for MESOS-1476 ticket).
>     
>     In Master::statusUpdateAcknowledgement method, you can't send a status 
> update ACK to a disconnected slave. Though, this should be possible for a 
> 'deactivated' slave (for which no resource offers are being sent, but is 
> currently running some tasks that had been lunched before the slave was 
> marked as deactivated -> TODO for MESOS-1476 ticket ).
>

Hmm. I opine that 'disconnected' is the proper term for a slave that has lost 
its connection to the master, and which will have to reregister upon 
reconnecting. Also, 'deactivated' is the proper term for a slave for which the 
allocator will no longer send any resource offers, and any outstanding offers 
will no longer be considered valid. I could even believe that disconnecting a 
slave with Master::disconnect(Slave) would involve deactivating it in the 
allocator with allocator->slaveDeactivated(). So far, the two terms/states have 
been tightly coupled. Now that you propose a separation of states (for 
MESOS-1476), you must be careful when considering one of the states to also 
consider the other. I think it's safe to say that a 'disconnected' slave should 
always also be 'deactivated', but that a slave can also be 'deactivated' 
manually, without getting disconnected first. A connected-but-deactivated slave 
may even be able to reactivate without needing to reauthenticate/reregister. 
But w
 hat if a deactivated slave does try to reregister? Does it restart into 
deactivated state? Can you call KillTask on a connected-but-deactivated slave?

TLDR: You can keep 'bool disconnected' and even 'disconnect(Slave)' as is for 
now, but be very careful when introducing a separate 'deactivated' state for 
MESOS-1476.


- Adam


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


On July 7, 2014, 12:05 p.m., Alexandra Sava wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/23147/
> -----------------------------------------------------------
> 
> (Updated July 7, 2014, 12:05 p.m.)
> 
> 
> Review request for mesos, Adam B and Ben Mahler.
> 
> 
> Bugs: MESOS-1188
>     https://issues.apache.org/jira/browse/MESOS-1188
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> The existing terminology is confusing both for "slaves.deactivated" and 
> "frameworks.activated". Currently a deactivated slave actually represents a 
> removed/shutdown slave and "frameworks.activated" map holds both activated 
> and deactivated frameworks.
> In order to make things look clear, rename the following:
> * master.slaves.deactivated -> master.slaves.removed
> * master.slaves.activated -> master.slaves.registered
> * master.frameworks.activated -> master.frameworks.registered
> * allocator.slaveDisconnect -> allocator.slaveDeactivate
> * allocator.slaveReconnected -> allocator.slaveReactivated
> 
> 
> Diffs
> -----
> 
>   src/master/allocator.hpp 1cd573477b609bb69264f16156a4004ecac672a7 
>   src/master/constants.hpp 2daa9b004ab0cc79773730350369f66315356cad 
>   src/master/constants.cpp e9e5e67f890f3399c24637c0f021d656dfe51118 
>   src/master/hierarchical_allocator_process.hpp 
> 1765e7035bdda4c28e79d74c92e77dcc99759001 
>   src/master/http.cpp 5d869767cd3ed48aae1e702e8d014a37ef371123 
>   src/master/master.hpp 5fef35406c2ce2ad11e030aa7752eb691aab5857 
>   src/master/master.cpp 251b699ef971d69190bb2269ec8679067383e546 
>   src/tests/fault_tolerance_tests.cpp 
> ac65050bec5720b982f53d4dd6797cc3dee285dc 
>   src/tests/master_authorization_tests.cpp 
> 0fdf464cc4a562afec276ec604205af3b56636de 
>   src/tests/mesos.hpp ae38a13d8b329f6e27813776e0d2f2b56605d0eb 
>   src/tests/slave_recovery_tests.cpp 582f52d73eba0e3ab089ec573d9a6c43bff0339e 
>   src/webui/master/static/home.html ce8ca192235c224715c01fef0b8ddb187dc0a827 
>   src/webui/master/static/js/controllers.js 
> 41a70a80442501a2bf7b217939dbe504662941d2 
> 
> Diff: https://reviews.apache.org/r/23147/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Alexandra Sava
> 
>

Reply via email to