[
https://issues.apache.org/jira/browse/MESOS-2198?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15101548#comment-15101548
]
Adam B commented on MESOS-2198:
-------------------------------
Renaming the ticket to reflect our desire for improved documentation.
> Scheduler#statusUpdate should not be called multiple times for the same
> status update
> -------------------------------------------------------------------------------------
>
> Key: MESOS-2198
> URL: https://issues.apache.org/jira/browse/MESOS-2198
> Project: Mesos
> Issue Type: Bug
> Components: framework
> Reporter: Robert Lacroix
>
> Currently Scheduler#statusUpdate can be called multiple times for the same
> status update, for example when the slave retransmits a status update because
> it's not acknowledged in time. Especially for terminal status updates this
> can lead to unexpected scheduler behavior when task id's are being reused.
> Consider this scenario:
> * Scheduler schedules task
> * Task fails, slave sends TASK_FAILED
> * Scheduler is busy and libmesos doesn't acknowledge update in time
> * Slave retransmits TASK_FAILED
> * Scheduler eventually receives first TASK_FAILED and reschedules task
> * Second TASK_FAILED triggers statusUpdate again and the scheduler can't
> determine if the TASK_FAILED belongs to the first or second run of the task.
> It would be a lot better if libmesos would dedupe status updates and only
> call Scheduler#statusUpdate once per status update it received. Retries with
> the same UUID shouldn't cause Scheduler#statusUpdate to be executed again.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)