Ben M, Thanks for posting this. In the Apache OODT Resource manager and Workflow Manager we do #1. #2 is kind of ugly (almost like casting or tagging the object's type); #3 would be good to do anyways, right?
Cheers, Chris ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Chris Mattmann, Ph.D. Senior Computer Scientist NASA Jet Propulsion Laboratory Pasadena, CA 91109 USA Office: 171-266B, Mailstop: 171-246 Email: [email protected] WWW: http://sunset.usc.edu/~mattmann/ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Adjunct Assistant Professor, Computer Science Department University of Southern California, Los Angeles, CA 90089 USA ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -----Original Message----- From: Benjamin Mahler <[email protected]> Reply-To: "[email protected]" <[email protected]> Date: Thursday, June 13, 2013 12:23 PM To: "[email protected]" <[email protected]>, Benjamin Hindman <[email protected]>, Vinod Kone <[email protected]>, Brenden Matthews <[email protected]> Subject: [DISCUSS] ExecutorID for Command Executors >Vinod and I had a discussion as a result of Brenden's review: >https://reviews.apache.org/r/11814 > >The webui is broken for command executors because the master does not know >the executor ID for the tasks using a command executor. This is because >the >Task protobuf only has the executor_id field, no other field to indicate >the presence of the command executor. > >It seems the slave also doesn't set the Task.executor_id for command >executors, thus relying on it being optionally set in executorTerminated() >to determine whether the task used a command executor. > >This all seems pretty messy, a few things to consider: > >1) Should we simply always set the Task.executor_id for these tasks? The >master could do so currently, but there would be an implicit contract that >the slave and master both use the task id as the executor id. > >2) We can add a boolean is_command_executor to Task, so that both the >master and slave can set the field, and the slave can use the boolean in >executorTerminated() to determine whether the task used a command >executor. > >3) Alternatively, we can add a /frameworks/FID/tasks/TID url format for >the >broken links on the master webui, so that we can search for the task in >the >slave state to locate its executor.
