You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by "Benjamin Mahler (JIRA)" <ji...@apache.org> on 2013/10/04 20:18:42 UTC
[jira] [Commented] (MESOS-488) The Master incorrectly sends a
"Framework failed over" message when the scheduler driver retries an
initial failover re-registration.
[ https://issues.apache.org/jira/browse/MESOS-488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13786439#comment-13786439 ]
Benjamin Mahler commented on MESOS-488:
---------------------------------------
https://reviews.apache.org/r/13757/
> The Master incorrectly sends a "Framework failed over" message when the scheduler driver retries an initial failover re-registration.
> -------------------------------------------------------------------------------------------------------------------------------------
>
> Key: MESOS-488
> URL: https://issues.apache.org/jira/browse/MESOS-488
> Project: Mesos
> Issue Type: Bug
> Affects Versions: 0.9.0, 0.10.0, 0.11.0, 0.12.0, 0.13.0
> Reporter: Vinod Kone
> Assignee: Benjamin Mahler
> Fix For: 0.14.0
>
>
> We have seen this in production at Twitter.
> Scheduler driver's re-register messages were backed up on the master (it was busy). When the master acted on the 2nd re-register message, it incorrectly sent a FrameworkError message to the scheduler that just re-registered.
> This bug can cause unnecessary additional failovers, if say, the master is delayed processing a re-registration attempt from a scheduler.
> // Replace the scheduler for a framework with a new process ID, in the
> // event of a scheduler failover.
> void Master::failoverFramework(Framework* framework, const UPID& newPid)
> {
> const UPID& oldPid = framework->pid;
> /** NEED TO GUARD AGAINST newPid == oldPid FOR RETRIES! */
> {
> FrameworkErrorMessage message;
> message.set_message("Framework failed over");
> send(oldPid, message);
> }
> ...
> }
> Sending the FrameworkErrorMessage here always is incorrect, we should not be sending it when the scheduler driver is simply re-trying the initial failover re-registration.
--
This message was sent by Atlassian JIRA
(v6.1#6144)