Expand description
Coordinates client requests with the dataflow layer.
This crate hosts the βcoordinatorβ, an object which sits at the center of the system and coordinates communication between the various components. Responsibilities of the coordinator include:
- Launching the dataflow workers.
- Periodically allowing the dataflow workers to compact existing data.
- Executing SQL queries from clients by parsing and planning them, sending the plans to the dataflow layer, and then streaming the results back to the client.
- Assigning timestamps to incoming source data.
The main interface to the coordinator is Client
. To start a coordinator,
use the serve
function.
Re-exportsΒ§
pub use crate::client::Client;
pub use crate::client::Handle;
pub use crate::client::SessionClient;
pub use crate::webhook::AppendWebhookError;
pub use crate::webhook::AppendWebhookResponse;
pub use crate::webhook::AppendWebhookValidator;
pub use crate::webhook::WebhookAppenderCache;
ModulesΒ§
- active_
compute_ πsink - Coordinator bookkeeping for active compute sinks.
- catalog
- Persistent metadata storage for the coordinator.
- client
- command π
- config
- continual_
task - Common methods for
CONTINUAL TASK
s. - coord π
- Translation of SQL commands into timestamped
Controller
commands. - error π
- explain π
EXPLAIN
support for various intermediate representations.- flags
- metrics
- notice π
- optimize π
- Optimizer interface to the adapter and coordinator code.
- session
- Per-connection configuration parameters and state.
- statement_
logging - telemetry
- Telemetry utilities.
- util π
- webhook
MacrosΒ§
- coord_
bail π
StructsΒ§
- Collection
IdBundle - A bundle of storage and compute collection identifiers.
- Config
- Configures a coordinator.
- Execute
Context - Bundle of state related to statement execution.
- Execute
Context Extra - State that the coordinator must process as part of retiring
command execution.
ExecuteContextExtra::Default
is guaranteed to produce a value that will cause the coordinator to do nothing, and is intended for use by code that invokes the execution processing flow (i.e.,sequence_plan
) without actually being a statement execution. - Read
Holds - Read holds kept to ensure a set of collections remains readable at some time.
- Startup
Response - The response to
Client::startup
. - Timestamp
Explanation - Information used when determining the timestamp for a query.
EnumsΒ§
- Adapter
Error - Errors that can occur in the coordinator.
- Adapter
Notice - Notices that can occur in the adapter layer.
- Execute
Response - The response to
SessionClient::execute
. - Execute
Response Kind - Peek
Response Unary - The response from a
Peek
, with row multiplicities represented in unary. - Timeline
Context - An enum describing whether or not a query belongs to a timeline and whether the query can be affected by the timestamp at which it executes.
- Timestamp
Context - The timeline and timestamp context of a read.
TraitsΒ§
FunctionsΒ§
- load_
remote_ system_ parameters - serve
- Serves the coordinator based on the provided configuration.
- verify_
datum_ desc - Verify that the rows in
RowIterator
match the expectedRelationDesc
.