reswqa commented on code in PR #21388:
URL: https://github.com/apache/flink/pull/21388#discussion_r1043271200
##########
flink-runtime/src/main/java/org/apache/flink/runtime/executiongraph/EdgeManagerBuildUtil.java:
##########
@@ -197,10 +202,22 @@ private static ConsumedPartitionGroup
createAndRegisterConsumedPartitionGroupToE
ConsumedPartitionGroup consumedPartitionGroup =
ConsumedPartitionGroup.fromMultiplePartitions(
numConsumers, consumedPartitions,
intermediateResult.getResultType());
+ finishConsumablePartitions(intermediateResult, consumedPartitions,
consumedPartitionGroup);
registerConsumedPartitionGroupToEdgeManager(consumedPartitionGroup,
intermediateResult);
return consumedPartitionGroup;
}
+ private static void finishConsumablePartitions(
+ IntermediateResult intermediateResult,
+ List<IntermediateResultPartitionID> consumedPartitionId,
+ ConsumedPartitionGroup consumedPartitionGroup) {
+ for (IntermediateResultPartitionID intermediateResultPartitionID :
consumedPartitionId) {
+ if
(intermediateResult.getPartitionById(intermediateResultPartitionID).isConsumable())
{
Review Comment:
We will make hybrid edge also can be mark finished to support speculative,
so i think it can be changed to `!mustBePipelinedConsumed && isConsumable`.
BTW, `hasDataProduced` will not be set to true in the pipelined edge now
(because the`markDataProduced()` method has no production code caller). Can we
directly change this status to `hasDataAllProduced`, and rename
`isConsumable()` to `isAllDataProduced ()`. WDYT?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]