Andreas Raster created MESOS-1845:
-------------------------------------

             Summary: CommandInfo tasks may fail if scheduled after another 
task with the same id has finished.
                 Key: MESOS-1845
                 URL: https://issues.apache.org/jira/browse/MESOS-1845
             Project: Mesos
          Issue Type: Bug
            Reporter: Andreas Raster


I created a little test framework where I wanted to experiment with scheduling 
tasks where running one task relies on the results of another, previously run 
task. So in my test framework I would first schedule a task that would append 
the string "foo" to a file, and after that one finishes I would schedule a task 
that appends "bar" to the same file.

This worked well when using ExecutorInfo, but when I switched to using 
CommandInfo instead (specifying commands like 'echo foo >> /share/foobar.txt' 
in set_value()), it would most of the time fail in the second step when 
attempting to append "bar". Occasionally, but very rarely, it would work though.

I couldn't find any meaningful log messages indicating what exactly went wrong. 
The slave log would indicate that the tasks status changed to TASK_FAILED and 
that that status update was sent correctly. The stdout log in the Sandbox would 
indicate that the command 'exited with status 0'.

I could work around the issue when I specified task ids that were always 
unique. Previously I would reuse the id of a previously run task, one that 
appended "foo" to a file, after it finished in the followup task that would 
append "bar" to a file.

It seems to me there might be something wrong when scheduling very short 
running tasks with the same id quickly after each other.

Source code for my foobar framework:
http://paste.ubuntu.com/8459083

Build with:
g++ -std=c++0x -g -Wall foobar_framework.cpp -I. -L/usr/local/lib -lmesos -o 
foobar-framework



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

Reply via email to