v0.4.0 - 2025-10-06
Added
- Introduced stop-instance and start-instance APIs to allow users to manually trigger a stop/start of a specific Postgres instance.
- Added support for adding new database nodes with zero downtime.
- Added stopped state for instances
- Added switchover support via the control plane API
- Added a "cancel database task" API endpoint
- Added validation to update-database to reject requests that update the database name.
- Added support for mTLS to the Control Plane API via user-managed certificates.
- Implemented the "get host" and "get cluster" endpoints.
Changed
- Switched to the new images from github.com/pgEdge/postgres-images.
- Added the postgres minor version to the
postgres_versionfields in the database and host APIs. - Changed the database creation behavior so that the first host in
host_idsgets the primary instance for a node. - Database update process so that nodes are processed one at a time. Within a node, replicas are always updated before the primary.
- Added automated switchovers before and after an instance is restarted as part of an update.
- Added validation to the update database API to reject requests that update the Postgres major version.
- Changed MQTT interface in client library to take an endpoint. This removes the need to generate unique client IDs per server. Callers are responsible for calling
Connect()andDisconnect()on the endpoint. - Enable fast basebackup for new nodes. This noticeably speeds up the creation process for a node with replicas.
- Changed patroni configuration to use pg_rewind for faster recovery after a switchover.
Fixed
- Fixed join cluster timeouts when requests were submitted to a member other than the raft leader.
Get the Docker image for this release from:
ghcr.io/pgedge/control-plane:v0.4.0-rc.1