pub struct Controller<T = Timestamp> { /* private fields */ }
Expand description

A client that maintains soft state and validates commands, in addition to forwarding them.

NOTE(benesch): I find the fact that this type is called Controller but is referred to as the dataflow_client in the coordinator to be very confusing. We should find the one correct name, and use it everywhere!

Implementations

Adds replicas of an instance.

Panics

Removes a replica from an instance, including its service in the orchestrator.

Removes an instance from the orchestrator.

Panics
  • If the identified instance still has active replicas.

Listen for changes to compute services reported by the orchestrator.

Acquires an immutable handle to a controller for the storage instance.

Acquires a mutable handle to a controller for the storage instance.

Acquires an immutable handle to a controller for the indicated compute instance, if it exists.

Acquires a mutable handle to a controller for the indicated compute instance, if it exists.

Wait until the controller is ready to process a response.

This method may await indefinitely.

This method is intended to be cancel-safe: dropping the returned future at any await point and restarting from the beginning is fine.

Process any queued messages.

This method is not known to be cancel-safe, and should not be called in the receiver of a tokio::select branch. Calling it in the handler of such a branch is fine.

This method is not intended to await indefinitely for reconnections and such; the coordinator relies on this property in order to not hang.

Creates a new controller.

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