Release Date: February 28, 2025
Enhancements
- Introduced a startup probe for the operator to enhance reliability and prevent premature liveness probe failures during initialization. (#7008)
- Added support for using the
-rservice with the Pooler. (#6868) - Introduced an optional
--ttlflag for thepgbenchplugin, enabling automatic deletion of completed jobs after a user-defined duration. (#6701) - Marked known error messages from the Azure CSI Driver for volume snapshots as retryable, improving resilience. (#6906)
- Updated the default PostgreSQL version to 17.4 for new cluster definitions. (#6960)
Security
- The operator image build process has been enhanced to strengthen security and transparency. Images are now signed with
cosign, and OCI attestations are generated, incorporating the Software Bill of Materials (SBOM) and provenance data. Additionally, OCI annotations have been added to improve traceability and ensure the integrity of the images.
Bug Fixes
- Fixed inconsistent behavior in default probe knob values when
.spec.probesis defined, ensuring users can override all settings, includingfailureThreshold. If unspecified in the startup probe,failureThresholdis now correctly derived from.spec.startupDelay / periodSeconds(default:10, now overridable). The same logic applies to liveness probes via.spec.livenessProbeTimeout. (#6656) - Managed service ports now take precedence over default operator-defined ports. (#6474)
- Fixed an issue where WAL metrics were unavailable after an instance restart until a configuration change was applied. (#6816)
- Fixed an issue in monolithic database import where role import was skipped if no roles were specified. (#6646)
- Added support for new metrics introduced in PgBouncer 1.24. (#6630)
- Resolved an issue where
Database,Publication, andSubscriptionCRDs became stuck incluster resource has been deleted, skipping reconciliationafter cluster rehydration. This patch forcesstatus.observedGenerationto zero, ensuring proper reconciliation. (#6607) - Improved handling of replication-sensitive parameter reductions by ensuring timely reconciliation after primary server restarts. (#6440)
- Introduced a new
isWALArchiverflag in the CNPG-I plugin configuration, allowing users to designate a plugin as a WAL archiver. This enables seamless migration from in-tree Barman Cloud support to the plugin while maintaining WAL archive consistency. (#6593) - Ensured
override.confis consistently included inpostgresql.confduring replica cluster bootstrapping, preventing replication failures due to missing configuration settings. (#6808) - Ensured
override.confis correctly initialized before invokingpg_rewindto prevent failures during primary role changes. (#6670) - Enhanced webhook responses to return both warnings and errors when applicable, improving diagnostic accuracy. (#6579)
- Ensured the operator version is correctly reconciled. (#6496)
- Improved PostgreSQL version detection by using a more precise check of the data directory. (#6659)
- Volume Snapshot Backups:
- Fixed an issue where unused backup connections were not properly cleaned up. (#6882)
- Ensured the instance manager closes stale PostgreSQL connections left by failed volume snapshot backups. (#6879)
- Prevented the operator from starting a new volume snapshot backup while another is already in progress. (#6890)
cnpgplugin:
Technical Enhancements
- Added support for Kubernetes
client-gen, enabling automated generation of Go clients for all CloudNativePG CRDs. (#6695)