Interface ExecPlanTask

All Superinterfaces:
Runnable, StatsProvider
All Known Subinterfaces:
PushBasedExecPlanTask
All Known Implementing Classes:
ConnectorForAdditionalConsumer, ExecPlanTaskBase, PullBasedExecPlanTaskBase, PullBasedExecPlanTaskForBinaryOperator, PullBasedExecPlanTaskForNullaryOperator, PullBasedExecPlanTaskForUnaryOperator, PushBasedExecPlanTaskBase, PushBasedExecPlanTaskForBinaryOperator, PushBasedExecPlanTaskForNaryOperator, PushBasedExecPlanTaskForNullaryOperator, PushBasedExecPlanTaskForUnaryOperator

public interface ExecPlanTask extends Runnable, StatsProvider
  • Method Details

    • isRunning

      boolean isRunning()
      Returns true if the execution of this task is currently running; that is, the execution has started and has neither been interrupted nor completed.
    • isCompleted

      boolean isCompleted()
      Returns true if the execution of this task has completed successfully, and returns false if either the execution is still running (in which case isRunning() is true) or the execution has been interrupted (in which case isRunning() is false).
    • hasFailed

      boolean hasFailed()
      Returns true if the execution of this task has failed with an exception. The exception that caused the failed can be obtained by calling getCauseOfFailure().
    • getCauseOfFailure

      Exception getCauseOfFailure()
      Returns the exception that caused the execution of this task to fail (in case hasFailed() is true).
    • getNextIntermediateResultBlock

      Returns either the next intermediate result block produced by this task or null if all these blocks have been returned already to earlier calls of this function. If no next block is currently available at the time when this function is called, then the call of this function causes the calling thread to wait until the next block has been produced (or it has become clear that no more blocks can be produced anymore).
      Throws:
      ExecPlanTaskInterruptionException
      ExecPlanTaskInputException
    • hasNextIntermediateResultBlockAvailable

      boolean hasNextIntermediateResultBlockAvailable()
      Returns true if an intermediate result block is already be available to be requested via getNextIntermediateResultBlock(). Hence, in this case, calling getNextIntermediateResultBlock() would not cause the calling thread to wait.
    • getStats

      ExecPlanTaskStats getStats()
      Specified by:
      getStats in interface StatsProvider