Joseph Wu created MESOS-3041:
--------------------------------

             Summary: Add an optional "reason" to the Decline call in the 
Event/Call API
                 Key: MESOS-3041
                 URL: https://issues.apache.org/jira/browse/MESOS-3041
             Project: Mesos
          Issue Type: Task
          Components: master
            Reporter: Joseph Wu


In the Event/Call API, the Decline call is currently used by frameworks to 
reject resource offers.

In the case of InverseOffers, the framework could give additional information 
to the operators and/or allocator, as to why the InverseOffer is declined. i.e. 
Suppose a cluster running some consensus algorithm is given an InverseOffer on 
one of its nodes.  It may decline saying "Too few nodes" (or, more verbosely, 
"Specified InverseOffer would lower the number of active nodes below quorum").

This change requires two changes:
* include/mesos/scheduler/scheduler.proto:
{code}
message Call {
  ...

  message Decline {
    repeated OfferID offer_ids = 1;
    optional Filters filters = 2;

    // Add this extra string for each OfferID
    // i.e. reasons[i] is for offer_ids[i]
    repeated string reasons = 3;
  }

  ...
}
{code}
* src/master/master.cpp
Change Master::decline to either store the reason, or log it.



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

Reply via email to