Release date: Jul 29, 2024
Enhancements:
- Add transparent support for PostgreSQL 17's
allow_alter_systemparameter, enabling or disabling theALTER SYSTEMcommand through the.spec.postgresql.enableAlterSystemoption (#4921). - Introduce the
reconcilePodSpecannotation on theClusterandPoolerresources to control the restart of pods following a change in the Pod specification (#5069). - Support the new metrics introduced in PgBouncer 1.23 in the
Poolermetrics collector (#5044).
Fixes:
- Enhance the mechanism for detecting Pods that have been terminated but not deleted during an eviction process, and extend the cleanup process during maintenance windows to include unschedulable Pods when the
reusePVCflag is set to false (#2056). - Disable
pg_rewindexecution for newly created replicas that employ VolumeSnapshot during bootstrapping to avoid introducing a new shutdown checkpoint entry in the WAL files. This ensures that replicas can reconnect to the primary without issues, which would otherwise be hindered by the additional checkpoint entry (#5081). - Gracefully handle failures during the initialization of a new instance. Any remaining data from the failed initialization is now either removed or, if it's a valid PostgreSQL data directory, moved to a backup location to avoid possible data loss (#5112).
- Enhance the robustness of the immediate backups reconciler by implementing retry logic upon initial backup failure (#4982).
- Wait for the
postmasterto shut down before starting it again (#4938). - Ensure that the
Poolerservice template can override the default service (#4846). - Exclude immutable databases from
pg_databasemetric monitoring and alerting processes (#4980). - Removed unnecessary permissions from the operator service account (#4911).
- Fix cluster role permissions for
ClusterImageCatalogs(#5034). - Ensure the operator initiates a rollout of the
Poolerinstance when the operator image is upgraded (#5006) - Address race condition causing the readiness probe to incorrectly show "not ready" after a PostgreSQL restart, even when the
postmasterwas accessible (#4920). - Prevent reconciliation of resources that aren't owned by a
Pooler(#4967). - Renew the certificates managed by the operator when the DNS Subject Alternative Names (SANs) are updated (#3269, #3319).
- Set PVC default
AccessModesin the template only when unspecified (#4845). - Gracefully handle unsatisfiable backup schedule (#5109).
cnpgplugin:- Properly handle errors during the
statuscommand execution. - Support TLS in the
statuscommand (#4915).
- Properly handle errors during the