Crate mz_adapter

Source
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 TASKs.
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Β§

CollectionIdBundle
A bundle of storage and compute collection identifiers.
Config
Configures a coordinator.
ExecuteContext
Bundle of state related to statement execution.
ExecuteContextExtra
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.
ReadHolds
Read holds kept to ensure a set of collections remains readable at some time.
StartupResponse
The response to Client::startup.
TimestampExplanation
Information used when determining the timestamp for a query.

EnumsΒ§

AdapterError
Errors that can occur in the coordinator.
AdapterNotice
Notices that can occur in the adapter layer.
ExecuteResponse
The response to SessionClient::execute.
ExecuteResponseKind
PeekResponseUnary
The response from a Peek, with row multiplicities represented in unary.
TimelineContext
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.
TimestampContext
The timeline and timestamp context of a read.

TraitsΒ§

ResultExt
TimestampProvider

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 expected RelationDesc.