> On Sept. 12, 2017, 11:03 a.m., Andrei Budnik wrote: > > src/docker/executor.cpp > > Lines 141 (patched) > > <https://reviews.apache.org/r/62212/diff/1/?file=1819447#file1819447line141> > > > > Do we really need to send `TASK_STARTING`, if we know that right after > > sending `TASK_STARTING`, `launchTask` might send `TASK_FAILED`, e.g. in > > case of following checks: > > ```c++ > > if (run.isSome()) { > > // ... > > status.set_state(TASK_FAILED); > > } > > ... > > if (runOptions.isError()) { > > // ... > > status.set_state(TASK_FAILED); > > } > > ``` > > What is the semantics of `TASK_STARTING` - should an executor send it > > always and unconditionally, or can we omit `TASK_STARTING` when we are > > pretty sure that we won't be able to launch a task? > > Omitting `TASK_STARTING` before sending `TASK_FAILED` might be a good > > optimization, if it's not important to send `TASK_STARTING` first. > > Alexander Rukletsov wrote: > Agree with Andrei: we should send task starting if we try to start the > task. If we know that starting will never succeed, we don't even try, hence > no task starting update : )
The previous documentation on `TASK_STARTING` was more of a loose guideline, so I think we're de-facto deciding on the `TASK_STARTING` semantics in this review. Intuitively, I find it most natural to have it mean "the executor is now aware of the task and will attempt to start it", and not to create any special cases. - Benno ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/62212/#review185156 ----------------------------------------------------------- On Sept. 11, 2017, 9:16 a.m., Benno Evers wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/62212/ > ----------------------------------------------------------- > > (Updated Sept. 11, 2017, 9:16 a.m.) > > > Review request for mesos, Andrei Budnik and Alexander Rukletsov. > > > Bugs: MESOS-7941 > https://issues.apache.org/jira/browse/MESOS-7941 > > > Repository: mesos > > > Description > ------- > > This gives schedulers more information about a tasks status, > in particular it gives a better estimate of a tasks start time > and helps differentiating between tasks stuck in TASK_STAGING > and tasks stuck in TASK_STARTING. > > > Diffs > ----- > > docs/high-availability-framework-guide.md > 73743aba31f9d0ca827d318e2ecb4752a91b1be0 > src/docker/executor.cpp e9949f652cd8527991ebfdfbf14e68b4c958fe79 > src/launcher/default_executor.cpp 106b7f2e0244d211c66b237b5d1c51f43fc6e529 > src/launcher/executor.cpp 951597b576b4912541dd87d52dcb981393e58082 > > > Diff: https://reviews.apache.org/r/62212/diff/1/ > > > Testing > ------- > > > Thanks, > > Benno Evers > >
