CloudNativePG
v1.29.0Storage & DataA feature-rich release adds configuration and observability capabilities, updates the default PostgreSQL image, and improves upgrade and recovery reliability. It also includes a fix for PostgreSQL role-password leakage in logs.
Action needed (1)
security
PostgreSQLrole-password loggingPostgreSQLno longer leaks role passwords in logs during specific reconciliation phases.
Check if affected (1)
breakingDefault
PostgreSQLversionApplies if you use the default
PostgreSQLversion.The default
PostgreSQLversion is now 18.3, using image18..3-system-trixie
Plan ahead (1)
deprecatedNative (in-tree) Barman Cloud support deprecation noticeremoval planned in 1.30.0
Applies if you use
native (in-tree) Barman Cloud support.The deprecation notice for
native (in-tree) Barman Cloud supportnow states that removal is planned for CloudNativePG 1.30.0 rather than 1.29.0.
All 34 other recorded changesfixes 14 · additions 13 · constraints 4 · value changes 3
fixes (14)
- Fixed a deadlock during operator upgrades affecting clusters using synchronous replication
- Fixed an issue where fencing annotations could not be processed when the WAL disk was full
- Fixed an issue where replicas would get stuck in a
Pendingstate if theVolumeSnapshotused for the initial bootstrap had been deleted. - Prevented the "supervised primary" rollout strategy from consuming all available rollout slots
- Fixed an issue where certain hot-standby parameter changes were not being correctly applied to replica clusters.
- Fixed a bug in the CNPG-I reconciler hook that could lead to skipping subsequent plugins
- Fixed a deadlock scenario that occurred when attempting to resize a filesystem on a PVC that was not currently attached to a Pod.
- Fixed webhook validation of bootstrap recovery sources to accept external clusters configured with
ConnectionParameters - Volume names for extensions and tablespaces are now prefixed to avoid naming collisions with standard cluster volumes.
- Fixed fencing to work correctly even when the target pod does not exist.
- Fixed the cluster and pooler service reconcilers to correctly handle changes to all spec fields when using the patch update strategy.
- Fixed a race condition in the deprecated in-tree Barman Cloud backup implementation affecting parallel WAL restore
- Fixed the timeline history file validation to also apply to plugin-based WAL restore.
- The cnpg plugin now correctly propagates ImagePullSecrets to the
pgbenchJob pod template.
additions (13)
- extended the
ImageCatalogfunctionality to support PostgreSQL extensions. - introduced the declarative definition of
podSelectorRefsto managepg_hba.rules dynamically.conf - added an optional
serviceAccountNamefield to bothClusterandPoolerspecifications. - Improved the
PoolerCRD with support for granular configuration of TLS cipher suites and minimum/maximum TLS versions. - emitting native Kubernetes events during key phases of the reconciliation loop
- Added a
bin_pathfield to thepostgresql.stanza, as well as inextensions ImageCatalogandClusterImageCatalogresources. - Added an
envfield to thepostgresql.stanza, as well as inextensions ImageCatalogandClusterImageCatalogresources. - Implemented a finalizer for plugins to ensure that resources managed by a plugin are gracefully cleaned up when the corresponding service is deleted.
- Introduced a "Terminal Error" phase for backups that encounter unrecoverable issues
- introducing
reconciliationStartedAtandreconciliationTerminatedAtfields to theBackupstatus. - Added a
Pendingphase to theBackupstatus - added SLSA (Supply-chain Levels for Software Artifacts) provenance to release binaries and container images. Additionally, enabled Software Bill of Materials (SBOM) generation
- the operator now reports a
WaitingForHealthycondition
constraints (4)
- Extended support for the
cnpg.annotation on Backup resources.io/reconciliationDisabled - allow it to function even on pods that have not yet reached the
Readystate - Kubernetes 1.35, 1.34, and 1.33
- PostgreSQL 18, 17, 16, 15, and 14
value changes (3)
- Improved the reliability of major upgrades by setting
BackoffLimit=0on the upgrade job, preventing unnecessary retries of a failedpg_upgrade. - Improved role management by verifying the instance is the primary before each reconciliation cycle
- The operator now honors the
primaryUpdateMethodwhen adding new PVCs to a cluster
A weekly email arrives when a release needs action. Like the security patches and breaking changes in this release.