Class IntermediateResult
- java.lang.Object
-
- org.apache.flink.runtime.executiongraph.IntermediateResult
-
public class IntermediateResult extends Object
-
-
Constructor Summary
Constructors Constructor Description IntermediateResult(IntermediateDataSet intermediateDataSet, ExecutionJobVertex producer, int numParallelProducers, ResultPartitionType resultType, ExecutionPlanSchedulingContext executionPlanSchedulingContext)
-
Method Summary
-
-
-
Constructor Detail
-
IntermediateResult
public IntermediateResult(IntermediateDataSet intermediateDataSet, ExecutionJobVertex producer, int numParallelProducers, ResultPartitionType resultType, ExecutionPlanSchedulingContext executionPlanSchedulingContext)
-
-
Method Detail
-
areAllConsumerVerticesCreated
public boolean areAllConsumerVerticesCreated()
-
setPartition
public void setPartition(int partitionNumber, IntermediateResultPartition partition)
-
getId
public IntermediateDataSetID getId()
-
getProducer
public ExecutionJobVertex getProducer()
-
getPartitions
public IntermediateResultPartition[] getPartitions()
-
getConsumerVertices
public List<JobVertexID> getConsumerVertices()
-
getPartitionById
public IntermediateResultPartition getPartitionById(IntermediateResultPartitionID resultPartitionId)
Returns the partition with the given ID.- Parameters:
resultPartitionId
- ID of the partition to look up- Returns:
- Intermediate result partition with the given ID
- Throws:
NullPointerException
- If partition IDnull
IllegalArgumentException
- Thrown if unknown partition ID
-
getNumberOfAssignedPartitions
public int getNumberOfAssignedPartitions()
-
getResultType
public ResultPartitionType getResultType()
-
getConsumingDistributionPattern
public DistributionPattern getConsumingDistributionPattern()
-
isBroadcast
public boolean isBroadcast()
Determines whether the associated intermediate data set uses a broadcast distribution pattern.A broadcast distribution pattern indicates that all data produced by this intermediate data set should be broadcast to every downstream consumer.
- Returns:
- true if the intermediate data set is using a broadcast distribution pattern; false otherwise.
-
isForward
public boolean isForward()
-
isSingleSubpartitionContainsAllData
public boolean isSingleSubpartitionContainsAllData()
Checks if a single subpartition contains all the produced data. This condition indicate that the data was intended to be broadcast to all consumers. If the decision to broadcast was made before the data production, this flag would likely be set accordingly. Conversely, if the broadcasting decision was made post-production, this flag will be false.- Returns:
- true if a single subpartition contains all the data; false otherwise.
-
getConnectionIndex
public int getConnectionIndex()
-
getCachedShuffleDescriptors
public CachedShuffleDescriptors getCachedShuffleDescriptors(ConsumedPartitionGroup consumedPartitionGroup)
-
cacheShuffleDescriptors
public CachedShuffleDescriptors cacheShuffleDescriptors(ConsumedPartitionGroup consumedPartitionGroup, TaskDeploymentDescriptorFactory.ShuffleDescriptorAndIndex[] shuffleDescriptors)
-
markPartitionFinished
public void markPartitionFinished(ConsumedPartitionGroup consumedPartitionGroup, IntermediateResultPartition resultPartition)
-
clearCachedInformationForPartitionGroup
public void clearCachedInformationForPartitionGroup(ConsumedPartitionGroup consumedPartitionGroup)
-
-