pub struct Snapshot {Show 14 fields
pub version: u32,
pub timestamp: u64,
pub metadata: SnapshotMetadata,
pub tasks: Vec<SnapshotTask>,
pub runs: Vec<SnapshotRun>,
pub engine: SnapshotEngineControl,
pub dependency_declarations: Vec<SnapshotDependencyDeclaration>,
pub budgets: Vec<SnapshotBudget>,
pub subscriptions: Vec<SnapshotSubscription>,
pub actors: Vec<SnapshotActor>,
pub tenants: Vec<SnapshotTenant>,
pub role_assignments: Vec<SnapshotRoleAssignment>,
pub capability_grants: Vec<SnapshotCapabilityGrant>,
pub ledger_entries: Vec<SnapshotLedgerEntry>,
}Expand description
A versioned snapshot of the ActionQueue state.
Snapshots capture the state of the ActionQueue system at a point in time and are used to accelerate recovery by providing a starting state for WAL replay. The snapshot format is versioned to support future evolution of the data structures.
Fields§
§version: u32The format version of this snapshot.
This version is used to ensure compatibility between the snapshot writer and loader. When the snapshot format changes in a breaking way, this version number should be incremented.
timestamp: u64The timestamp when this snapshot was taken (Unix epoch seconds).
This timestamp represents the point-in-time at which the snapshot was captured.
metadata: SnapshotMetadataMetadata about the snapshot for versioning and compatibility.
tasks: Vec<SnapshotTask>The tasks known at the time of the snapshot.
runs: Vec<SnapshotRun>The runs known at the time of the snapshot.
engine: SnapshotEngineControlEngine control projection at snapshot time.
dependency_declarations: Vec<SnapshotDependencyDeclaration>Dependency declarations at snapshot time.
budgets: Vec<SnapshotBudget>Budget allocations and consumption records at snapshot time.
subscriptions: Vec<SnapshotSubscription>Subscription state records at snapshot time.
actors: Vec<SnapshotActor>Actor registration records at snapshot time.
tenants: Vec<SnapshotTenant>Tenant records at snapshot time.
role_assignments: Vec<SnapshotRoleAssignment>Role assignment records at snapshot time.
capability_grants: Vec<SnapshotCapabilityGrant>Capability grant records at snapshot time.
ledger_entries: Vec<SnapshotLedgerEntry>Ledger entries at snapshot time.