mesos-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benjamin Mahler (JIRA)" <j...@apache.org>
Subject [jira] [Created] (MESOS-7865) Agent may process a kill task and still launch the task.
Date Mon, 07 Aug 2017 23:45:01 GMT
Benjamin Mahler created MESOS-7865:
--------------------------------------

             Summary: Agent may process a kill task and still launch the task.
                 Key: MESOS-7865
                 URL: https://issues.apache.org/jira/browse/MESOS-7865
             Project: Mesos
          Issue Type: Bug
          Components: agent
            Reporter: Benjamin Mahler
            Assignee: Benjamin Mahler


Based on the investigation of MESOS-7744, the agent has a race in which "queued" tasks can
still be launched after the agent has processed a kill task for them. This race was introduced
when {{Slave::statusUpdate}} was made asynchronous:

(1) {{Slave::__run}} completes, task is now within {{Executor::queuedTasks}}
(2) {{Slave::killTask}} locates the executor based on the task ID residing in queuedTasks,
calls {{Slave::statusUpdate()}} with {{TASK_KILLED}}
(3) {{Slave::___run}} assumes that killed tasks have been removed from {{Executor::queuedTasks}},
but this now occurs asynchronously in {{Slave::_statusUpdate}}. So, the executor still sees
the queued task and delivers it and adds the task to {{Executor::launchedTasks}}.
(3) {{Slave::_statusUpdate}} runs, removes the task from {{Executor::launchedTasks}} and adds
it to {{Executor::terminatedTasks}}.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message