Question: Modifying Checkpoint Interval at runtime

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Question: Modifying Checkpoint Interval at runtime

Morgan Geldenhuys
I am working with the Flink at the moment and am interested in modifying
the codebase so that the checkpoint interval can be changed at runtime,
(e.g. if it was set to kickoff the distributed snapshot process every 10
seconds, and then I wanted to change it to every 15 seconds instead
without restarting). I was wondering, in your professional opinion, is
this possible? Of course I am not expecting this to be a simple
implementation, however, what considerations would I need to take into
account and which parts of the codebase would this modification involve.
Reply | Threaded
Open this post in threaded view
|

Re: Question: Modifying Checkpoint Interval at runtime

Congxian Qiu
In current Flink, the checkpoint interval can not be modified after job
started, If you want to change the code to implement this feature, maybe
you can try to see the logic in CheckpointCoordinator, and the usage of
function checkMinPauseBetweenCheckpoints[1] and
scheduleTriggerWithDelay()[2]

[1]
https://github.com/apache/flink/blob/19689cb8ddb7cdc57a99d02217e67880c5e938a5/flink-runtime/src/main/java/org/apache/flink/runtime/checkpoint/CheckpointCoordinator.java#L1463
[2]
https://github.com/apache/flink/blob/19689cb8ddb7cdc57a99d02217e67880c5e938a5/flink-runtime/src/main/java/org/apache/flink/runtime/checkpoint/CheckpointCoordinator.java#L1485
Best,
Congxian


Morgan Geldenhuys <[hidden email]> 于2020年2月7日周五 下午7:12写道:

> I am working with the Flink at the moment and am interested in modifying
> the codebase so that the checkpoint interval can be changed at runtime,
> (e.g. if it was set to kickoff the distributed snapshot process every 10
> seconds, and then I wanted to change it to every 15 seconds instead
> without restarting). I was wondering, in your professional opinion, is
> this possible? Of course I am not expecting this to be a simple
> implementation, however, what considerations would I need to take into
> account and which parts of the codebase would this modification involve.
>