Packages

c

com.here.platform.data.processing.driver.modes

MultiExecutorsNonIncrementalMode

class MultiExecutorsNonIncrementalMode extends MultiExecutorsBaseMode

Runs a sequence of com.here.platform.data.processing.driver.Executors in non-incremental mode.

This driver task allows the running of a sequence of compilers where every subsequent executor is provided with data produced by the previous one. This allows the execution of multiple compilers without the need of creating a filter for each of them.

Note

input layers list of subsequent compilers have to include the needed output layers from the previous ones

,

no output layer overwriting is allowed in the current implementation

,

users of this class are strongly encouraged to build the related driver task via the com.here.platform.data.processing.driver.MultiCompilerTaskBuilder. This guarantees a type safe approach in the construction. Moreover, the mentioned builders assigns to each executor a unique id based on the driver task id set by the user.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MultiExecutorsNonIncrementalMode
  2. MultiExecutorsBaseMode
  3. ContextAwareMode
  4. TaskMode
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new MultiExecutorsNonIncrementalMode(context: DriverContext, id: Id, executors: Seq[Executor])

    context

    the com.here.platform.data.processing.driver.DriverContext relative to this mode

    id

    the identifier of the com.here.platform.data.processing.driver.DriverTask the mode belongs to, for logging reasons

    executors

    the executor that should sequentially run

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def actualRun(): RDD[(Key, Commit)]
    Attributes
    protected
  5. def applyChanges(existingData: RDD[(OutKey, OutMeta)], outCommits: RDD[(OutKey, OutCommit)], version: Version): (RDD[(OutKey, InMeta)], RDD[(OutKey, Change)])

    Propagates changes into the input metadata to simulate a commit.

    Propagates changes into the input metadata to simulate a commit.

    In multi-compiler full compilation intermediate results are only published to the blobstore, while metadata are kept and committed at the end of the executor sequence execution. This means that for a subsequent executor changes done by the previous one has to appear in the input metadata.

    existingData

    the status of the out data before compilation

    outCommits

    the just completed executor changes

    version

    the version to be committed

    returns

    the new state of the input metadata for the incoming execution

    Attributes
    protected
    Definition Classes
    MultiExecutorsBaseMode
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  8. val context: DriverContext
    Definition Classes
    ContextAwareMode
  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  11. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. def getNextVersion(currentBase: BaseVersion): Version

    Increments the base version of the output catalog.

    Increments the base version of the output catalog.

    In multi-compiler driver tasks we need to simulate a publishing and the related commit. For this reason we need to increase the version of some input data.

    currentBase

    the current base version

    Attributes
    protected
    Definition Classes
    MultiExecutorsBaseMode
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. def isApplicable: Boolean

    This mode is always applicable, as it's always possible to compile the input catalogs from scratch.

    This mode is always applicable, as it's always possible to compile the input catalogs from scratch.

    returns

    if the mode is applicable, so if the mode should run and its result evaluated

    Definition Classes
    MultiExecutorsNonIncrementalModeTaskMode
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  18. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  20. val parallelism: Int
    Attributes
    protected
    Definition Classes
    ContextAwareMode
  21. def run(): TaskResult

    Runs the compiler ignoring changes and compiling always the whole input catalogs.

    Runs the compiler ignoring changes and compiling always the whole input catalogs.

    returns

    the result of the compilation

    Definition Classes
    MultiExecutorsNonIncrementalModeTaskMode
  22. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  23. def toString(): String
    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from MultiExecutorsBaseMode

Inherited from ContextAwareMode

Inherited from TaskMode

Inherited from AnyRef

Inherited from Any

Ungrouped