com.r3corda.node.services.api / CheckpointStorage

CheckpointStorage

interface CheckpointStorage

Thread-safe storage of fiber checkpoints.



Functions

addCheckpoint abstract fun addCheckpoint(checkpoint: Checkpoint): Unit

Add a new checkpoint to the store.

forEach abstract fun forEach(block: (Checkpoint) -> Boolean): Unit

Allows the caller to process safely in a thread safe fashion the set of all checkpoints. The checkpoints are only valid during the lifetime of a single call to the block, to allow memory management. Return false from the block to terminate further iteration.

removeCheckpoint abstract fun removeCheckpoint(checkpoint: Checkpoint): Unit

Remove existing checkpoint from the store. It is an error to attempt to remove a checkpoint which doesnt exist in the store. Doing so will throw an IllegalArgumentException.

Inheritors

DBCheckpointStorage class DBCheckpointStorage : CheckpointStorage

Simple checkpoint key value storage in DB using the underlying JDBCHashMap and transactional context of the call sites.

PerFileCheckpointStorage class PerFileCheckpointStorage : CheckpointStorage

File-based checkpoint storage, storing checkpoints per file.