Repository navigation
Releases: haneeshpld/cloudnative-pg
Release list
v1.25.0
Release Date: December 23, 2024
Features
-
Declarative Database Management: Introduce the
DatabaseCustom Resource Definition (CRD), enabling users to create and manage PostgreSQL databases declaratively within a cluster. (cloudnative-pg#5325) -
Logical Replication Management: Add
PublicationandSubscriptionCRDs for declarative management of PostgreSQL logical replication. These simplify replication setup and facilitate online migrations to CloudNativePG. (cloudnative-pg#5329) -
Experimental Support for CNPG-I: Introducing CNPG-I (CloudNativePG Interface), a standardized framework designed to extend CloudNativePG functionality through third-party plugins and foster the growth of the CNPG ecosystem. The Barman Cloud Plugin serves as a live example, illustrating how plugins can be developed to enhance backup and recovery workflows. Although CNPG-I support is currently experimental, it offers a powerful approach to extending CloudNativePG without modifying the operator’s core code—akin to PostgreSQL extensions. We welcome community feedback and contributions to shape this exciting new capability.
Enhancements
- Add the
dataDurabilityoption to the.spec.postgresql.synchronousstanza, allowing users to choose betweenrequired(default) orpreferreddurability in synchronous replication. (cloudnative-pg#5878) - Enable customization of startup, liveness, and readiness probes through the
.spec.probesstanza. (cloudnative-pg#6266) - Support additional
pg_dumpandpg_restoreoptions to enhance database import flexibility. (cloudnative-pg#6214) - Add support for
maxConcurrentReconcilesin the CloudNativePG controller and set the default to 10, improving the operator's ability to efficiently manage larger deployments out of the box. (cloudnative-pg#5678) - Add the
cnpg.io/userTypelabel to secrets generated for predefined users, specificallysuperuserandapp. (cloudnative-pg#4392) - Improved validation for the
spec.schedulefield in ScheduledBackups, raising warnings for potential misconfigurations. (cloudnative-pg#5396) cnpgplugin:- Enhance the
backupcommand to support plugins. (cloudnative-pg#6045) - Honor the
User-Agentheader in HTTP requests with the API server. (cloudnative-pg#6153)
- Enhance the
Bug Fixes
- Ensure the former primary flushes its WAL file queue to the archive before re-synchronizing as a replica, reducing recovery times and enhancing data consistency during failovers. (cloudnative-pg#6141)
- Clean the WAL volume along with the
PGDATAvolume during bootstrap. (cloudnative-pg#6265) - Update the operator to set the cluster phase to
Unrecoverablewhen all previously generatedPersistentVolumeClaimsare missing. (cloudnative-pg#6170) - Fix the parsing of the
synchronous_standby_namesGUC when.spec.postgresql.synchronous.methodis set tofirst. (cloudnative-pg#5955) - Resolved a potential race condition when patching certain conditions in CRD statuses, improving reliability in concurrent updates. (cloudnative-pg#6328)
- Correct role changes to apply at the transaction level instead of the database context. (cloudnative-pg#6064)
- Remove the
primary_slot_namedefinition from theoverride.conffile on the primary to ensure it is always empty. (cloudnative-pg#6219) - Configure libpq environment variables, including
PGHOST, in PgBouncer pods to enable seamless access to thepgbouncervirtual database usingpsqlfrom within the container. (cloudnative-pg#6247) - Remove unnecessary updates to the Cluster status when verifying changes in the image catalog. (cloudnative-pg#6277)
- Prevent panic during recovery from an external server without proper backup configuration. (cloudnative-pg#6300)
- Resolved a key collision issue in structured logs, where the name field was inconsistently used to log two distinct values. (cloudnative-pg#6324)
- Ensure proper quoting of the inRoles field in SQL statements to prevent syntax errors in generated SQL during role management. (cloudnative-pg#6346)
cnpgplugin:- Ensure the
kubectlcontext is properly passed in thepsqlcommand. (cloudnative-pg#6257) - Avoid displaying physical backups block when empty with
statuscommand. (cloudnative-pg#5998)
- Ensure the
Supported Versions
- Kubernetes: 1.32, 1.31, 1.30, and 1.29
- PostgreSQL: 17, 16, 15, 14, and 13
- Default image: PostgreSQL 17.2
- Officially dropped support for PostgreSQL 12
- PostgreSQL 13 support ends on November 12, 2025