Expand description
Plain-data mirror of a managed cluster’s durable configuration.
These types carry the slices of a managed cluster’s config that a caller reasons over without touching the catalog or SQL layers. Keeping them free of catalog and SQL dependencies lets one component reason over the config and another project the live config onto the same types, without either depending on the other.
ExpectedClusterState is a compare-and-append witness. A caller captures
it from a config snapshot and pairs it with a conditional write. The applier
re-projects the live config and applies the write only if it still equals
the witness.
Structs§
- Auto
Scaling Policy - The user-configured autoscaling policy of a managed cluster, mirrored from
durable state. A plain-data mirror of
mz_sql::plan::AutoScalingStrategy, free of a dependency on the SQL layer. - Availability
Zone Pool - An unordered set of availability zones: an
AvailabilityZonesprovisioning list reduced to membership. Produced byAvailabilityZones::poolfor the one comparison that must ignore order, replica interchangeability. - Availability
Zones - The availability zones a managed cluster’s replicas are provisioned across, in configured provisioning order.
- Burst
Record - An active hydration-burst record, mirrored from durable state.
- Expected
Cluster State - Compare-and-append witness over a managed cluster’s durable config: the fields a conditional write is conditioned on. The applier applies the write only if the cluster’s current config still projects to an equal witness.
- OnHydration
Policy - The
ON HYDRATIONburst sub-policy: while some object on the cluster is not hydrated on a steady replica, run one extra replica athydration_sizeto accelerate hydration, lingering forlinger_durationafter the steady set hydrates. - Reconfiguration
Record - The latest graceful reconfiguration record, mirrored from durable state.
- Reconfiguration
Target - The full config shape a reconfiguration is moving the cluster to. Distinct
from a replica shape because it additionally carries
replication_factor, a cluster-level rather than replica-level dimension. - Replica
Shape - The config dimensions that distinguish one replica from another. Two replicas
with equal shape are interchangeable. An
AVAILABILITY ZONESdifference is a shape difference, but only as an unordered pool: reordering the same zones does not change a replica’s shape (seeReplicaShape::matches).
Enums§
- Burst
Audit - The lifecycle transition a write to the
burstrecord represents, declared by the writer likeReconfigurationAudit. A burst record is also rewritten in place for bookkeeping (stamping or resetting the linger clock), which is not a lifecycle transition and declares no audit. - Burst
Finish Cause - Why a hydration burst finished, known only to the strategy arm that decided the teardown.
- Cluster
Schedule - A managed cluster’s scheduling policy, mirrored from durable state. A
plain-data mirror of
mz_sql::plan::ClusterSchedule, free of a dependency on the SQL layer. - OnTimeout
- The action a graceful reconfiguration applies once its
deadlinepasses with the target replicas not yet hydrated. Success always takes precedence: a hydrated target cuts over regardless of this. A plain-data mirror ofmz_sql::plan::OnTimeoutAction, free of a dependency on the SQL layer. - Reconfiguration
Audit - The lifecycle transition a write to the
reconfigurationrecord represents, declared by the writer at the decision point and carried alongside the state so the audit event is emitted in the same catalog transaction as the write. A plain-data mirror of the audit-log lifecycle vocabulary, free of a dependency onmz-audit-log. - Reconfiguration
Status - The status of the latest graceful reconfiguration record.
Functions§
- burst_
record_ warranted - The single definition of when an in-flight burst record of
record_sizeis warranted: the cluster is on and theON HYDRATIONpolicy in force (if any) bursts at the record’s size.hydration_sizeisNonewhen no policy is in force. The catalog and the cluster controller wrap this over their own config representations, so the two sides of the burst lifecycle cannot drift.