Interface StateSnapshot

All Superinterfaces:
Immutable
All Known Subinterfaces:
Snapshot.State
All Known Implementing Classes:
EmptyState, ShardSnapshotState

@NonNullByDefault public interface StateSnapshot extends Immutable
Marker interface for objects representing a snapshot of RAFT-replicated user state. A StateSnapshot represents a logical sum of all StateCommands applied to the journal at a particular point in time.
  • Method Details

    • needsMigration

      default boolean needsMigration()
      Indicate whether the snapshot requires migration, i.e. a new snapshot should be created after recovery. Default implementation returns false, i.e. do not re-snapshot.
      Returns:
      true if complete recovery based upon this snapshot should trigger a new snapshot.