mesos-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jie Yu (JIRA)" <>
Subject [jira] [Created] (MESOS-8081) Race between containerizer->update and terminal status update.
Date Thu, 12 Oct 2017 17:34:00 GMT
Jie Yu created MESOS-8081:

             Summary: Race between containerizer->update and terminal status update.
                 Key: MESOS-8081
             Project: Mesos
          Issue Type: Bug
    Affects Versions: 1.4.0, 1.3.1, 1.2.2, 1.1.3
            Reporter: Jie Yu

It is possible that a terminal status update (e.g., TASK_FINISHED) is sent to the master (`latest_state`
is set to TASK_FINISHED) while `containerizer->update` is still in progress. This will
cause master to release the resources to other frameworks, while the resources is not released
yet on the agent.

Consider the following sequence:

1) A running executor sends TASK_RUNNING, and gets an ack
2) TASK_RUNNING is received by StatusUpdateManager
3) Framework hasn't acked the TASK_RUNNING yet
4) The executor sends TASK_FINISHED
5) TASK_FINISHED is terminal, thus we call contianerizer->update to release the resources
6) StatusUpdateManager generates a retry on TASK_RUNNING because it's not ack'ed
7) TASK_RUNNING will attach the latest state which is TASK_FINISHED
8) Master release the resources associated with the task while contianerizer->update is
still in progress

This message was sent by Atlassian JIRA

View raw message