Interface CheckpointStorageLocation

All Superinterfaces:
CheckpointStreamFactory
All Known Implementing Classes:
FsCheckpointStorageLocation, FsMergingCheckpointStorageLocation, NonPersistentMetadataCheckpointStorageLocation, PersistentMetadataCheckpointStorageLocation

public interface CheckpointStorageLocation extends CheckpointStreamFactory
A storage location for one particular checkpoint, offering data persistent, metadata persistence, and lifecycle/cleanup methods.

CheckpointStorageLocations are typically created and initialized via CheckpointStorageCoordinatorView.initializeLocationForCheckpoint(long) or CheckpointStorageCoordinatorView.initializeLocationForSavepoint(long, String).

  • Method Details

    • createMetadataOutputStream

      CheckpointMetadataOutputStream createMetadataOutputStream() throws IOException
      Creates the output stream to persist the checkpoint metadata to.
      Returns:
      The output stream to persist the checkpoint metadata to.
      Throws:
      IOException - Thrown, if the stream cannot be opened due to an I/O error.
    • disposeOnFailure

      void disposeOnFailure() throws IOException
      Disposes the checkpoint location in case the checkpoint has failed. This method disposes all the data at that location, not just the data written by the particular node or process that calls this method.
      Throws:
      IOException
    • getLocationReference

      CheckpointStorageLocationReference getLocationReference()
      Gets a reference to the storage location. This reference is sent to the target storage location via checkpoint RPC messages and checkpoint barriers, in a format avoiding backend-specific classes.

      If there is no custom location information that needs to be communicated, this method can simply return CheckpointStorageLocationReference.getDefault().