pub struct Controller<T: Timestamp + Lattice + Codec64 + Unpin> {
    state: StorageControllerState<T>,
    persist_location: PersistLocation,
    persist_client: PersistClient,
    orchestrator: Arc<dyn NamespacedOrchestrator>,
    storaged_image: String,
}
Expand description

A storage controller for a storage instance.

Fields

state: StorageControllerState<T>persist_location: PersistLocation

The persist location where all storage collections are being written to

persist_client: PersistClient

A persist client used to write to storage collections

orchestrator: Arc<dyn NamespacedOrchestrator>

An orchestrator to start and stop storage processes.

storaged_image: String

The storaged image to use when starting new storage processes.

Implementations

Create a new storage controller from a client it should wrap.

Validate that a collection exists for all identifiers, and error if any do not.

Trait Implementations

Formats the value using the given formatter. Read more

“Linearize” the listed sources.

If these sources are valid and “linearizable”, then the response will respond with timestamps that are guaranteed to be up-to-date with the max offset found at the time of the command issuance.

Note: “linearizable” in this context may not represent true linearizability in all cases.

Acquire an immutable reference to the collection state, should it exist.

Acquire a mutable reference to the collection state, should it exist.

Create the sources described in the individual CreateSourceCommand commands. Read more

Drops the read capability for the sources and allows their resources to be reclaimed.

Append updates into the local input named id and advance its upper to upper.

Returns the snapshot of the contents of the local input named id at as_of.

Assigns a read policy to specific identifiers. Read more

Accept write frontier updates from the compute layer.

Applies updates and sends any appropriate compaction command.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Attaches the provided Context to this type, returning a WithContext wrapper. Read more

Attaches the current Context to this type, returning a WithContext wrapper. Read more

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Wrap the input message T in a tonic::Request

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more