abstract class MultiExecutorsBaseMode extends ContextAwareMode
Base class for a mode that runs a sequence of com.here.platform.data.processing.driver.Executors.
Mainly provides checks to driver task integrity common to all executors.
- Alphabetic
- By Inheritance
- MultiExecutorsBaseMode
- ContextAwareMode
- TaskMode
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
MultiExecutorsBaseMode(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
Abstract Value Members
-
abstract
def
isApplicable: Boolean
Checks whether the given driver task is applicable.
Checks whether the given driver task is applicable.
- returns
if the mode is applicable, so if the mode should run and its result evaluated
- Definition Classes
- TaskMode
-
abstract
def
run(): TaskResult
Executes the compiler if the task mode is applicable for the com.here.platform.data.processing.driver.job.Job.
Executes the compiler if the task mode is applicable for the com.here.platform.data.processing.driver.job.Job.
- returns
the result of the compilation if applicable, otherwise None
- Definition Classes
- TaskMode
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
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
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
val
context: DriverContext
- Definition Classes
- ContextAwareMode
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
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
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
val
parallelism: Int
- Attributes
- protected
- Definition Classes
- ContextAwareMode
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()