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)