Class CheckpointsCleaner

java.lang.Object
org.apache.flink.runtime.checkpoint.CheckpointsCleaner
All Implemented Interfaces:
Serializable, AutoCloseable, org.apache.flink.util.AutoCloseableAsync

@ThreadSafe public class CheckpointsCleaner extends Object implements Serializable, org.apache.flink.util.AutoCloseableAsync
Delegate class responsible for checkpoints cleaning and counting the number of checkpoints yet to clean.
See Also:
  • Constructor Details

    • CheckpointsCleaner

      public CheckpointsCleaner()
    • CheckpointsCleaner

      public CheckpointsCleaner(boolean parallelMode)
  • Method Details

    • cleanCheckpoint

      public void cleanCheckpoint(Checkpoint checkpoint, boolean shouldDiscard, Runnable postCleanAction, Executor executor)
    • addSubsumedCheckpoint

      public void addSubsumedCheckpoint(CompletedCheckpoint completedCheckpoint)
      Add one subsumed checkpoint to CheckpointsCleaner, the subsumed checkpoint would be discarded at cleanSubsumedCheckpoints(long, Set, Runnable, Executor).
      Parameters:
      completedCheckpoint - which is subsumed.
    • cleanSubsumedCheckpoints

      public void cleanSubsumedCheckpoints(long upTo, Set<Long> stillInUse, Runnable postCleanAction, Executor executor)
      Clean checkpoint that is not in the given .
      Parameters:
      upTo - lowest CheckpointID which is still valid.
      stillInUse - the state of those checkpoints are still referenced.
      postCleanAction - post action after cleaning.
      executor - is used to perform the cleanup logic.
    • cleanCheckpointOnFailedStoring

      public void cleanCheckpointOnFailedStoring(CompletedCheckpoint completedCheckpoint, Executor executor)
    • closeAsync

      public CompletableFuture<Void> closeAsync()
      Specified by:
      closeAsync in interface org.apache.flink.util.AutoCloseableAsync