[ 
https://issues.apache.org/jira/browse/MESOS-3583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14973265#comment-14973265
 ] 

Benjamin Mahler commented on MESOS-3583:
----------------------------------------

The motivation for this is to maintain parity with the existing driver concept 
of a session (based on UPID uniqueness, see the ticket description). This 
doesn't get persisted during failover: the lifetime of a session is tied to the 
lifetime of a SUBSCRIBE connection against the master. Even properly 
implemented frameworks can make mistakes without this (see the example in the 
description).

> Introduce sessions in HTTP Scheduler API Subscribed Responses
> -------------------------------------------------------------
>
>                 Key: MESOS-3583
>                 URL: https://issues.apache.org/jira/browse/MESOS-3583
>             Project: Mesos
>          Issue Type: Task
>            Reporter: Anand Mazumdar
>              Labels: mesosphere, tech-debt
>
> Currently, the HTTP Scheduler API has no concept of Sessions aka 
> {{SessionID}} or a {{TokenID}}. This is useful in some failure scenarios. As 
> of now, if a framework fails over and then subscribes again with the same 
> {{FrameworkID}} with the {{force}} option set. The Mesos master would 
> subscribe it.
> If the previous instance of the framework/scheduler tries to send a Call , 
> e.g. {{Call::KILL}} with the same previous {{FrameworkID}} set, it would be 
> still accepted by the master leading to erroneously killing a task.
> This is possible because we do not have a way currently of distinguishing 
> connections. It used to work in the previous driver implementation due to the 
> master also performing a {{UPID}} check to verify if they matched and only 
> then allowing the call.



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

Reply via email to