Greg Mann created MESOS-9957:
--------------------------------

             Summary: Sequence all operations on the agent
                 Key: MESOS-9957
                 URL: https://issues.apache.org/jira/browse/MESOS-9957
             Project: Mesos
          Issue Type: Task
            Reporter: Greg Mann


The resolution of MESOS-8582 requires that an asynchronous step be added to the 
code path which applies speculative operations like RESERVE and CREATE on the 
agent. In order to ensure that the {{FrameworkInfo}} associated with an 
incoming operation will be successfully retained, we must first unschedule GC 
on the framework meta directory if the framework struct does not exist but that 
directory does. By introducing this asynchronous step, we allow the possibility 
that an operation may be executed out-of-order with respect to an incoming 
dependent LAUNCH or LAUNCH_GROUP.

For example, if a scheduler issues an ACCEPT call containing both a RESERVE 
operation  as well as a LAUNCH operation containing a task which consumes the 
new reserved resources, it's possible that this task will be launched on the 
agent before the reserved resources exist.

While we already [sequence task launches on a per-executor 
basis|https://github.com/apache/mesos/blob/9297e2d3b0d44b553fc89bcf5f6109c76cc53668/src/slave/slave.cpp#L2337-L2408],
 the aforementioned corner case requires that we sequence _all_ offer 
operations on a per-framework basis.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to