Ilya Pronin created MESOS-8185:
----------------------------------

             Summary: Master should kill tasks that are unknown to it after 
registered agent re-registers
                 Key: MESOS-8185
                 URL: https://issues.apache.org/jira/browse/MESOS-8185
             Project: Mesos
          Issue Type: Bug
    Affects Versions: 1.2.0
            Reporter: Ilya Pronin


Currently, when a master re-registers an agent that was marked unreachable, it 
shutdowns all not partition-aware frameworks on that agent. When a master 
re-registers an agent that is already registered, it doesn't check that all 
tasks from the slave's re-registration message are known to it.

It is possible that due to a transient loss of connectivity an agent may miss 
{{SlaveReregisteredMessage}} along with {{ShutdownFrameworkMessage}} and thus 
will not kill not partition-aware tasks. But the master will mark the agent as 
registered and will not re-add tasks that it thought will be killed. The agent 
may re-register again, this time successfully, before becoming marked 
unreachable while never having terminated tasks of not partition-aware 
frameworks. The master will simply forget those tasks ever existed, because it 
has "removed" them during the previous re-registration.

Example scenario:
# Connection from the master to the agent stops working
# Agent doesn't see pings from the master and attempts to re-register
# Master sends {{SlaveRegisteredMessage}} and {{ShutdownSlaveMessage}}, which 
don't get to the agent because of the connection failure. Agent is marked 
registered.
# Network issue resolves, connection breaks. Agent retries re-registration.
# Master thinks that the agent was registered since step (3) and just re-sends 
{{SlaveRegisteredMessage}}. Tasks remain running on the agent.

One of the possible solutions would be to compare the list of tasks the the 
already registered agent reports in {{ReregisterSlaveMessage}} and the list of 
tasks the master has. In this case anything that the master doesn't know about 
should not exist on the agent.



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

Reply via email to