Skip to content

Checkpoints

Understanding checkpoints and common use cases.

A checkpoint is a durable pin that preserves the current view of the namespace for readers. It effectively “reserves” the relevant manifest underlying resources so that a reader can safely query the current state without things moving underneath.

Checkpoint records have three possible categories of owners:

OwnerCreated forReleased by
userAn operator-created administrative pin, labeled with namemaintenance checkpoint delete, its optional expiry, or namespace deletion
snapshotAn application-created read viewThe snapshot lifecycle, lease expiry, or namespace deletion
forkA target namespace that depends on its source thanks to copy-on-writeThe fork lifecycle after the target no longer needs the source

Checkpoints are part of the underlying mechanism powering forking (see namespaces & forking), but they can also be used to enable bootstrapping of external indexes or mirrors and for broader use cases that need to reference a stable “snapshot” for long-running consistent reads.

The CLI can be used as follows:

Terminal window
loonfs maintenance checkpoint create --name nightly
loonfs maintenance checkpoint list
loonfs maintenance checkpoint delete {checkpoint_id}

Use --ttl-ms when creating a checkpoint that should expire automatically.