Till Rohrmann created FLINK-6626: ------------------------------------ Summary: Unifying lifecycle management of SubmittedJobGraph- and CompletedCheckpointStore Key: FLINK-6626 URL: https://issues.apache.org/jira/browse/FLINK-6626 Project: Flink Issue Type: Improvement Components: Distributed Coordination Affects Versions: 1.3.0, 1.4.0 Reporter: Till Rohrmann
Currently, Flink uses the {{SubmittedJobGraphStore}} to persist {{JobGraphs}} such that they can be recovered in case of failures. The {{SubmittedJobGraphStore}} is managed by by the {{JobManager}}. Additionally, Flink has the {{CompletedCheckpointStore}} which stores checkpoints for a given {{ExecutionGraph}}/job. The {{CompletedCheckpointStore}} is managed by the {{CheckpointCoordinator}}. The {{SubmittedJobGraphStore}} and the {{CompletedCheckpointStore}} are somewhat related because in the latter we store checkpoints for jobs contained in the former. I think it would be nice wrt lifecycle management to let the {{SubmittedJobGraphStore}} manage the lifecycle of the {{CompletedCheckpointStore}}, because often it does not make much sense to keep only checkpoints without a job or a job without checkpoints. An idea would be when we register a job with the {{SubmittedJobGraphStore}} then it returns a {{CompletedCheckpointStore}}. This store can then be given to the {{CheckpointCoordinator}} to store the checkpoints. When a job enters a terminal state it could be the responsibility of the {{SubmittedJobGraphStore}} to decide what to do with the job data ({{JobGraph}} and {{Checkpoints}}), e.g. keeping it or cleaning it up. -- This message was sent by Atlassian JIRA (v6.3.15#6346)