[ 
https://issues.apache.org/jira/browse/FLINK-20439?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Zhu Zhu updated FLINK-20439:
----------------------------
    Description: 
JobMaster#scheduleOrUpdateConsumers() was used  to schedule a vertex when its 
PIPELINED inputs have data produced.
It is not needed anymore in the latest pipelined region scheduling because 
PIPELINED upstream and downstream tasks will be scheduled all at once. 

  was:
Execution#scheduleOrUpdateConsumers() was used for multiple purposes:
- schedule a vertex when its PIPELINED inputs have produced data 
- schedule a vertex when its BLOCKING inputs have finished
- update consumed partition info to RUNNING consumers
- cache consumed partition info for DEPLOYING consumers

It is not needed anymore in the latest pipelined region scheduling because 
- a region will be scheduled only when all its upstream regions have finished
- a vertex will always know all its consumed partitions when scheduled

So we can consider how to simply or remove it, which also involves things like 
UnknownInputChannel, ResultPartitionConsumableNotifier, 
Execution#cachePartitionInfo(), etc.


> Simplifying scheduleOrUpdateConsumers
> -------------------------------------
>
>                 Key: FLINK-20439
>                 URL: https://issues.apache.org/jira/browse/FLINK-20439
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Runtime / Coordination
>            Reporter: Zhu Zhu
>            Assignee: Zhu Zhu
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.13.0
>
>
> JobMaster#scheduleOrUpdateConsumers() was used  to schedule a vertex when its 
> PIPELINED inputs have data produced.
> It is not needed anymore in the latest pipelined region scheduling because 
> PIPELINED upstream and downstream tasks will be scheduled all at once. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to