Class DefaultExecutionTopology
- java.lang.Object
-
- org.apache.flink.runtime.scheduler.adapter.DefaultExecutionTopology
-
- All Implemented Interfaces:
SchedulingTopology
,BaseTopology<ExecutionVertexID,IntermediateResultPartitionID,SchedulingExecutionVertex,SchedulingResultPartition>
,Topology<ExecutionVertexID,IntermediateResultPartitionID,SchedulingExecutionVertex,SchedulingResultPartition,SchedulingPipelinedRegion>
public class DefaultExecutionTopology extends Object implements SchedulingTopology
Adapter ofExecutionGraph
toSchedulingTopology
.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static DefaultExecutionTopology
fromExecutionGraph(DefaultExecutionGraph executionGraph)
Iterable<DefaultSchedulingPipelinedRegion>
getAllPipelinedRegions()
Returns all pipelined regions in this topology.EdgeManager
getEdgeManager()
DefaultSchedulingPipelinedRegion
getPipelinedRegionOfVertex(ExecutionVertexID vertexId)
The pipelined region for a specified vertex.org.apache.flink.runtime.scheduler.adapter.DefaultResultPartition
getResultPartition(IntermediateResultPartitionID intermediateResultPartitionId)
Looks up theSchedulingResultPartition
for the givenIntermediateResultPartitionID
.org.apache.flink.runtime.scheduler.adapter.DefaultExecutionVertex
getVertex(ExecutionVertexID executionVertexId)
Looks up theSchedulingExecutionVertex
for the givenExecutionVertexID
.Iterable<org.apache.flink.runtime.scheduler.adapter.DefaultExecutionVertex>
getVertices()
Returns an iterable over all vertices, topologically sorted.void
notifyExecutionGraphUpdated(DefaultExecutionGraph executionGraph, List<ExecutionJobVertex> newlyInitializedJobVertices)
void
registerSchedulingTopologyListener(SchedulingTopologyListener listener)
Register a scheduling topology listener.
-
-
-
Method Detail
-
getVertices
public Iterable<org.apache.flink.runtime.scheduler.adapter.DefaultExecutionVertex> getVertices()
Description copied from interface:BaseTopology
Returns an iterable over all vertices, topologically sorted.- Specified by:
getVertices
in interfaceBaseTopology<ExecutionVertexID,IntermediateResultPartitionID,SchedulingExecutionVertex,SchedulingResultPartition>
- Returns:
- topologically sorted iterable over all vertices
-
getVertex
public org.apache.flink.runtime.scheduler.adapter.DefaultExecutionVertex getVertex(ExecutionVertexID executionVertexId)
Description copied from interface:SchedulingTopology
Looks up theSchedulingExecutionVertex
for the givenExecutionVertexID
.- Specified by:
getVertex
in interfaceSchedulingTopology
- Parameters:
executionVertexId
- identifying the respective scheduling vertex- Returns:
- The respective scheduling vertex
-
getResultPartition
public org.apache.flink.runtime.scheduler.adapter.DefaultResultPartition getResultPartition(IntermediateResultPartitionID intermediateResultPartitionId)
Description copied from interface:SchedulingTopology
Looks up theSchedulingResultPartition
for the givenIntermediateResultPartitionID
.- Specified by:
getResultPartition
in interfaceSchedulingTopology
- Parameters:
intermediateResultPartitionId
- identifying the respective scheduling result partition- Returns:
- The respective scheduling result partition
-
registerSchedulingTopologyListener
public void registerSchedulingTopologyListener(SchedulingTopologyListener listener)
Description copied from interface:SchedulingTopology
Register a scheduling topology listener. The listener will be notified bySchedulingTopologyListener.notifySchedulingTopologyUpdated(SchedulingTopology, List)
when the scheduling topology is updated.- Specified by:
registerSchedulingTopologyListener
in interfaceSchedulingTopology
- Parameters:
listener
- the registered listener.
-
getAllPipelinedRegions
public Iterable<DefaultSchedulingPipelinedRegion> getAllPipelinedRegions()
Description copied from interface:Topology
Returns all pipelined regions in this topology.- Specified by:
getAllPipelinedRegions
in interfaceTopology<ExecutionVertexID,IntermediateResultPartitionID,SchedulingExecutionVertex,SchedulingResultPartition,SchedulingPipelinedRegion>
- Returns:
- Iterable over pipelined regions in this topology
-
getPipelinedRegionOfVertex
public DefaultSchedulingPipelinedRegion getPipelinedRegionOfVertex(ExecutionVertexID vertexId)
Description copied from interface:Topology
The pipelined region for a specified vertex.- Specified by:
getPipelinedRegionOfVertex
in interfaceTopology<ExecutionVertexID,IntermediateResultPartitionID,SchedulingExecutionVertex,SchedulingResultPartition,SchedulingPipelinedRegion>
- Parameters:
vertexId
- the vertex id identifying the vertex for which the pipelined region should be returned- Returns:
- the pipelined region of the vertex
-
getEdgeManager
public EdgeManager getEdgeManager()
-
notifyExecutionGraphUpdated
public void notifyExecutionGraphUpdated(DefaultExecutionGraph executionGraph, List<ExecutionJobVertex> newlyInitializedJobVertices)
-
fromExecutionGraph
public static DefaultExecutionTopology fromExecutionGraph(DefaultExecutionGraph executionGraph)
-
-