Release notes for CloudNativePG 1.23

History of user-visible changes in the 1.23 minor release of CloudNativePG.

For a complete list of changes, please refer to the commits on the release branch in GitHub.

Version 1.23.1

Release date: Apr 29, 2024

Fixes:

  • Corrects the reconciliation of PodMonitor resources, which was failing due to a regression (#4286)

Version 1.23.0

Release date: Apr 24, 2024

Important changes to Community Supported Versions

We've updated our support policy to streamline our focus on one supported minor release at a time, rather than two. Additionally, we've extended the supplementary support period for the previous minor release to 3 months.

Features:

  • PostgreSQL Image Catalogs: Introduced ClusterImageCatalog and ImageCatalog CRDs to manage operand container images based on PostgreSQL major version. This is facilitated through the Cluster's .spec.imageCatalogRef stanza. This feature provides an alternative to the imageName option and will eventually replace it as the default method to define operand container images.
  • User-Defined Replication Slots: Enhanced the synchronization of physical replication slots to cover user-defined replication slots on the primary, via the newly introduced stanza replicationSlots.synchronizeReplicas.
  • Configuration of Pod Disruption Budgets (PDB): Introduced the .spec.enablePDB field to disable PDBs on the primary instance, allowing proper eviction of the pod during maintenance operations. This is particularly useful for single-instance deployments. This feature is intended to replace the node maintenance window feature.

Enhancements:

  • Users now have the capability to transition an existing cluster into replica mode, simplifying cross-datacenter switchover operations (#4261)
  • Users can now customize the connection pooler service, including its type, labels, and annotations (#3384)
  • Users can now configure the wal_log_hints PostgreSQL parameter (#4218) (#4218)
  • Fully Qualified Domain Names (FQDN) in URIs for automatically generated secrets (#4095)
  • Cleanup of instance Pods not owned by the Cluster during Cluster restore (#4141)
  • Command output of the plugin’s status command to show the status of PDBs (#4319)
  • Error detection when invoking barman-cloud-wal-restore in recovery bootstrap (#4101)

Fixes:

  • Ensured that before a switchover, the elected replica is in streaming replication (#4288)
  • Correctly handle parsing errors of instances' LSN when sorting them (#4283)
  • Recreate the primary Pod if there are no healthy standbys available to promote (#4132)
  • Cleanup PGDATA in case of failure of the restore job (#4151)
  • Reload certificates on configuration update (#3705)
  • cnpg plugin for kubectl:
    • Improve the arguments handling of destroy, fencing, and promote plugin commands (#4280)
    • Correctly handle the percentage of the backup progress in cnpg status (#4131)
    • Gracefully handle databases with no sequences in sync-sequences command (#4346)

Changes:

  • Operator images are now based on gcr.io/distroless/static-debian12:nonroot (#4201)
  • The Grafana dashboard now resides at https://github.com/cloudnative-pg/grafana-dashboards (#4154)