TaskResult is an abstraction of task results (of type
The decision what
TaskResult type to use is made when
TaskRunner finishes running a task.
TaskResult is a Scala sealed trait which means that all of the implementations are in the same compilation unit (a single file).
sealed trait TaskResult[T]
DirectTaskResult is a
TaskResult to be serialized and sent over the wire to the driver together with the following:
DirectTaskResult is a java.io.Externalizable.
IndirectTaskResult is a "pointer" to a task result that is available in a BlockManager:
IndirectTaskResult is a java.io.Serializable.