[jira] [Created] (FLINK-19954) Move execution deployment tracking logic from legacy EG code to SchedulerNG

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

[jira] [Created] (FLINK-19954) Move execution deployment tracking logic from legacy EG code to SchedulerNG

Shang Yuanchun (Jira)
Andrey Zagrebin created FLINK-19954:
---------------------------------------

             Summary: Move execution deployment tracking logic from legacy EG code to SchedulerNG
                 Key: FLINK-19954
                 URL: https://issues.apache.org/jira/browse/FLINK-19954
             Project: Flink
          Issue Type: Task
          Components: Runtime / Coordination
    Affects Versions: 1.12.0
            Reporter: Andrey Zagrebin


FLINK-17075 introduced the execution state reconciliation between TM and JM. The reconciliation requires tracking of the execution deployment state. The tracking logic was added to the legacy code of EG state handling which is partially inactive as discussed in FLINK-19927. The recent state handling logic resides in the new SchedulerNG, currently DefaultScheduler.

We could reconsider how the execution tracking for reconciliation is integrated with the scheduling. I think the tracking logic could be moved from Execution#deploy and EG#notifyExecutionChange to either SchedulerNG#updateTaskExecutionState or DefaultScheduler#deployTaskSafe. The latter looks to me currently more natural. ExecutionVertexOperations.deploy could return submission future for deployment completion in ExecutionDeploymentTracker and Execution#getTerminalFuture to stop the tracking. This would be also easier to unit test.



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