[ 
https://issues.apache.org/jira/browse/MESOS-2499?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Rukletsov updated MESOS-2499:
---------------------------------------
    Target Version/s: 0.22.0
            Shepherd: Vinod Kone

> SOURCE_EXECUTOR not set properly in slave.cpp
> ---------------------------------------------
>
>                 Key: MESOS-2499
>                 URL: https://issues.apache.org/jira/browse/MESOS-2499
>             Project: Mesos
>          Issue Type: Bug
>          Components: slave
>            Reporter: James DeFelice
>            Assignee: Alexander Rukletsov
>
> Slave::statusUpdate attempts to set the Source of the TaskStatus to either 
> SOURCE_SLAVE or SOURCE_EXECUTOR:
> https://github.com/apache/mesos/blob/0.21.0/src/slave/slave.cpp#L2222
> {code}
>     TaskStatus status = update.status();
>     status.set_source(pid == UPID() ? TaskStatus::SOURCE_SLAVE
>                                   : TaskStatus::SOURCE_EXECUTOR);
> {code}
> Unfortunately it make this change to a copy of the TaskStatus that's later 
> discarded and the change is never saved to the parent StatusUpdate. This 
> results in slave-forward()ed status updates that lack a proper source value.
> The likely fix is that the set_source() update should be invoked on a 
> TaskStatus* that's obtained via StatusUpdate.mutable_status() so that the new 
> source is saved properly. It's not clear to me if StatusUpdate should be 
> obtained via mutable_update().
> It would also be helpful to have a unit test for this scenario.



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

Reply via email to