Interface CheckpointAlgorithm

All Known Implementing Classes:
AbstractCheckpointAlgorithm

public interface CheckpointAlgorithm
CheckpointAlgorithm provides a custom checkpoint policy for chunk steps.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    The beginCheckpoint method is invoked before the next checkpoint interval begins (before the next chunk transaction begins).
    int
    The checkpointTimeout is invoked at the beginning of a new checkpoint interval for the purpose of establishing the checkpoint timeout.
    void
    The endCheckpoint method is invoked after the last checkpoint is taken (after the chunk transaction is committed).
    boolean
    The isReadyToCheckpoint method is invoked by the batch runtime after each item is processed to determine if now is the time to checkpoint the current chunk.
  • Method Details

    • checkpointTimeout

      int checkpointTimeout() throws Exception
      The checkpointTimeout is invoked at the beginning of a new checkpoint interval for the purpose of establishing the checkpoint timeout. It is invoked before the next chunk transaction begins. This method returns an integer value, which is the timeout value (expressed in seconds) which will be used for the next chunk transaction. This method is useful to automate the setting of the checkpoint timeout based on factors known outside the job definition. A value of '0' signifies no maximum established by this CheckpointAlgorithm, i.e. the maximum permissible timeout allowed by the runtime environment.
      Returns:
      the timeout interval (expressed in seconds) to use for the next checkpoint interval
      Throws:
      Exception - thrown for any errors.
    • beginCheckpoint

      void beginCheckpoint() throws Exception
      The beginCheckpoint method is invoked before the next checkpoint interval begins (before the next chunk transaction begins).
      Throws:
      Exception - thrown for any errors.
    • isReadyToCheckpoint

      boolean isReadyToCheckpoint() throws Exception
      The isReadyToCheckpoint method is invoked by the batch runtime after each item is processed to determine if now is the time to checkpoint the current chunk.
      Returns:
      boolean indicating whether or not to checkpoint now.
      Throws:
      Exception - thrown for any errors.
    • endCheckpoint

      void endCheckpoint() throws Exception
      The endCheckpoint method is invoked after the last checkpoint is taken (after the chunk transaction is committed).
      Throws:
      Exception - thrown for any errors.