Class SqlStageExecution


  • @ThreadSafe
    public final class SqlStageExecution
    extends Object
    • Method Detail

      • getStageId

        public StageId getStageId()
      • addStateChangeListener

        public void addStateChangeListener​(StateMachine.StateChangeListener<StageState> stateChangeListener)
        Listener is always notified asynchronously using a dedicated notification thread pool so, care should be taken to avoid leaking this when adding a listener in a constructor.
      • addFinalStageInfoListener

        public void addFinalStageInfoListener​(StateMachine.StateChangeListener<StageInfo> stateChangeListener)
        Add a listener for the final stage info. This notification is guaranteed to be fired only once. Listener is always notified asynchronously using a dedicated notification thread pool so, care should be taken to avoid leaking this when adding a listener in a constructor. Additionally, it is possible notifications are observed out of order due to the asynchronous execution.
      • addCompletedDriverGroupsChangedListener

        public void addCompletedDriverGroupsChangedListener​(Consumer<Set<Lifespan>> newlyCompletedDriverGroupConsumer)
      • beginScheduling

        public void beginScheduling()
      • transitionToSchedulingSplits

        public void transitionToSchedulingSplits()
      • schedulingComplete

        public void schedulingComplete()
      • schedulingComplete

        public void schedulingComplete​(PlanNodeId partitionedSource)
      • cancel

        public void cancel()
      • abort

        public void abort()
      • getUserMemoryReservation

        public long getUserMemoryReservation()
      • getTotalMemoryReservation

        public long getTotalMemoryReservation()
      • getTotalCpuTime

        public io.airlift.units.Duration getTotalCpuTime()
      • getStageInfo

        public StageInfo getStageInfo()
      • addExchangeLocations

        public void addExchangeLocations​(PlanFragmentId fragmentId,
                                         Set<RemoteTask> sourceTasks,
                                         boolean noMoreExchangeLocations)
      • setOutputBuffers

        public void setOutputBuffers​(OutputBuffers outputBuffers)
      • hasTasks

        public boolean hasTasks()
      • recordGetSplitTime

        public void recordGetSplitTime​(long start)
      • isAnyTaskBlocked

        public boolean isAnyTaskBlocked()