[ 
https://issues.apache.org/jira/browse/MESOS-3068?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14637213#comment-14637213
 ] 

Joseph Wu commented on MESOS-3068:
----------------------------------

I'm not certain if we want to conflate this with the Registrar, but even if the 
Maintenance-storing does not get implemented into the Registrar class, what we 
require from a maintenance-storing class is pretty similar:
* We need to recover on initialization or after failover.
* We need to apply operations on the stored object.

The Maintenance-storing-class would look akin to a copy-pasted Registrar class, 
with "Registry" renamed to "Maintenance", and without the Registrar::Recover 
Operation and the _recover continuation.

> Registry operations are hardcoded for a single key (Registry object)
> --------------------------------------------------------------------
>
>                 Key: MESOS-3068
>                 URL: https://issues.apache.org/jira/browse/MESOS-3068
>             Project: Mesos
>          Issue Type: Task
>          Components: master, replicated log
>            Reporter: Joseph Wu
>            Assignee: Joseph Wu
>              Labels: mesosphere
>
> This is primarily a refactoring.
> The prototype for modifying the registry is currently:
> {code}
> Try<bool> operator () (
>     Registry* registry,
>     hashset<SlaveID>* slaveIDs,
>     bool strict);
> {code}
> In order to support Maintenance schedules (possibly Quotas as well), there 
> should be an alternate prototype for Maintenance.  Something like:
> {code}
> Try<bool> operation () (
>     Maintenance* maintenance,
>     bool strict);
> {code}
> The existing RegistrarProcess::update (src/master/registrar.cpp) should be 
> refactored to allow for more than one key.  If necessary, refactor existing 
> operations defined in src/master/master.hpp (AdminSlave, ReadminSlave,  
> RemoveSlave).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to