Skip to content

feat: live HA cluster scaling controller - #1051

Merged
paulocsanz merged 1 commit into
masterfrom
pcs/pg-mgmt-05-cluster-scale
Aug 7, 2026
Merged

feat: live HA cluster scaling controller#1051
paulocsanz merged 1 commit into
masterfrom
pcs/pg-mgmt-05-cluster-scale

Conversation

@paulocsanz

Copy link
Copy Markdown
Collaborator

Part 5/8 of the railway postgres pitr/ha/pgbouncer stack (split out of #1032 for reviewability — see that PR for the full context, live-prod e2e evidence, and the test-postgres-cli harness). Each PR is based on the previous one and is independently green (cargo test/clippy/fmt).

Ports the dashboard's useScaleHACluster against the CLI's environment-config
types: scaling up clones a live sibling's shape (image, decrypted variables,
volume mount) into a brand-new service+volume; scaling down removes the
highest-numbered nodes, never the primary coordinator; every change restamps
the cluster's declared wiring on survivors. Edge nodes scale as plain region
replica counts. After committing, the new members' parent links are
re-verified: the public patch path silently drops parentServiceId (confirmed
live), and the CLI warns loudly instead of letting the orphaned-topology
surprise land later.

Part 5/8 of the railway postgres pitr/ha/pgbouncer stack.

@paulocsanz paulocsanz added the release/skip Author no release label Aug 7, 2026
@paulocsanz
paulocsanz force-pushed the pcs/pg-mgmt-04-template-apply branch from 6fe5000 to ec5862d Compare August 7, 2026 21:01
@paulocsanz
paulocsanz force-pushed the pcs/pg-mgmt-05-cluster-scale branch from f497f21 to 895fd32 Compare August 7, 2026 21:01
@paulocsanz
paulocsanz force-pushed the pcs/pg-mgmt-04-template-apply branch from ec5862d to f395d56 Compare August 7, 2026 21:08
@paulocsanz
paulocsanz force-pushed the pcs/pg-mgmt-05-cluster-scale branch from 895fd32 to 2715c45 Compare August 7, 2026 21:08
Base automatically changed from pcs/pg-mgmt-04-template-apply to master August 7, 2026 21:17
Ports the dashboard's useScaleHACluster against the CLI's environment-config
types: scaling up clones a live sibling's shape (image, decrypted variables,
volume mount) into a brand-new service+volume; scaling down removes the
highest-numbered nodes, never the primary coordinator; every change restamps
the cluster's declared wiring on survivors. Edge nodes scale as plain region
replica counts. After committing, the new members' parent links are
re-verified: the public patch path silently drops parentServiceId (confirmed
live), and the CLI warns loudly instead of letting the orphaned-topology
surprise land later.

Part 5/8 of the railway postgres pitr/ha/pgbouncer stack.
@paulocsanz
paulocsanz force-pushed the pcs/pg-mgmt-05-cluster-scale branch from 2715c45 to c415692 Compare August 7, 2026 21:18
@paulocsanz
paulocsanz merged commit 6f7236f into master Aug 7, 2026
9 checks passed
@paulocsanz
paulocsanz deleted the pcs/pg-mgmt-05-cluster-scale branch August 7, 2026 21:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release/skip Author no release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant