[jira] [Created] (FLINK-14236) Make LazyFromSourcesSchedulingStrategy do lazy scheduling only based on partition state

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (FLINK-14236) Make LazyFromSourcesSchedulingStrategy do lazy scheduling only based on partition state

Shang Yuanchun (Jira)
Zhu Zhu created FLINK-14236:
-------------------------------

             Summary: Make LazyFromSourcesSchedulingStrategy do lazy scheduling only based on partition state
                 Key: FLINK-14236
                 URL: https://issues.apache.org/jira/browse/FLINK-14236
             Project: Flink
          Issue Type: Sub-task
          Components: Runtime / Coordination
    Affects Versions: 1.10.0
            Reporter: Zhu Zhu
             Fix For: 1.10.0


The philosophy of lazy_from_sources scheduling is to schedule a task when its inputs are ready, i.e. when needed result partitions are consumable. It actually does not directly care whether a task is finished, though a finished task will lead its partitions to be consumable.

The {{LazyFromSourcesSchedulingStrategy}} currently does lazy scheduling in two ways:
1. trigger scheduling on FINISHED execution state for blocking partition consumers
2. trigger scheduling on partition consumable events for pipelined partition consumers
This makes the scheduling decision a bit messy. And it also requires the {{LazyFromSourcesSchedulingStrategy}} to manage the partition state by itself, to decide when a partition is consumable, which is not good.

I'd propose to make {{LazyFromSourcesSchedulingStrategy}} do lazy scheduling only based on partition state. This can make the scheduling decision making clearer and relieve {{LazyFromSourcesSchedulingStrategy}} from partition state management.

This work requires FLINK-14234 so that all partition consumable events can be notified.




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