Reference > Release Notes > All revisions > Revision 381/382
Revision 381/382
September 11, 2024
Dear community,
Canonical’s newest Charmed PostgreSQL K8s operator has been published in the 14/stable channel.
Due to the newly added support for arm64 architecture, the PostgreSQL K8s charm now releases multiple revisions simultaneously:
- Revision 381 is built for
amd64on Ubuntu 22.04 LTS (postgresql-image r162) - Revision 382 is built for
arm64on Ubuntu 22.04 LTS (postgresql-image r162)
To make sure you deploy for the right architecture, we recommend setting an architecture constraint for your entire juju model.
Otherwise, it can be done at deploy time with the --constraints flag:
juju deploy postgresql-k8s --trust --constraints arch=<arch>
where <arch> can be amd64 or arm64.
Highlights
- Upgraded PostgreSQL from v.14.11 → v.14.12 (PR #563)
- Check the official PostgreSQL release notes
- Added support for Point In Time Recovery (PR #554) (DPE-4839)
- Added COS tracing support with tempo-k8s (PR #497) (DPE-4617)
Features
- Added user warning when deploying charm with wrong architecture (PR #613) (DPE-4239)
- Improved backups behavior (PR #542) (DPE-4479)
- Add libpq’s connection string URI format to
urifield in relation databag (PR #545) (DPE-2278) - Changed ‘master’ to ‘primary’ in Patroni leader role (PR #532) (DPE-1177)
- Added password to Patroni’s REST API (PR #661) (DPE-5275)
- Improve pgbackrest logging (PR #587)
Bugfixes and stability
- Restart pebble service if it’s down (PR #581) (DPE-4806)
- Switched test app interface (PR #595)
- Addeded missing
awaittoinvalid_extra_user_rolesintegration test + fix check loop (PR #602) - Fixed UTC time zone (PR #592)
- Fix PITR test on Juju 2.9 (PR #596) (DPE-4990)
- Fixed storage ownership (PR #580) (DPE-4227)
- Fixed get-password action description (PR #605) (DPE-5019)
- Quick fix for blocked CI (PR #533)
- CI stability fixes + slicing tests (PR #524) (DPE-4620)
- Added test for relations coherence (PR #505)
- Addressed test_charm and test_self_healing instabilities (PR #510) (DPE-4594)
- Split PITR backup test in AWS and GCP (PR #664) (DPE-5244)
- Import JujuVersion from ops.jujuversion instead of ops.model (PR #640)
- Don’t block on missing Postgresql version (PR #626) (DPE-3562)
- Run integration tests on arm64 (PR #478)
- Improved async replication stability (PR #526) (DPE-4736)
- Removed deprecated config option
profile-limit-memory(PR #608) - Pause Patroni in the TLS test (PR #588) (DPE-4533)
- Enforce Juju versions (PR #544) (DPE-4811)
- Block charm if plugin disable fails due to dependent objects (PR #567) (DPE-4801)
- Temporarily disable log forwarding & fix for race in Patroni REST password setup (PR #663)
- Use manifest file to check for charm architecture (PR #665) (DPE-4239)
- Only write app data if leader (PR #676) (DPE-5325)
- Added log for
fix_leader_annotationmethod (PR #679)
Known limitations
- The unit action
resume-upgraderandomly raises a harmless error message:terminated. - The charm sysbench may crash during a PostgreSQL charm refresh.
- Make sure that cluster-cluster replication is requested for the same charm/workload revisions. An automated check is planned.
- Contact us to schedule a cluster-cluster replication upgrade with you.
If you are jumping over several stable revisions, check previous release notes before upgrading.
Requirements and compatibility
This charm revision features the following changes in dependencies:
- (increased) The minimum Juju version required to reliably operate all features of the release is
v3.4.5You can upgrade to this revision on Juju
v2.9.50+, but it will not support newer features like cross-regional asynchronous replication, point-in-time recovery, and modern TLS certificate charm integrations. - (increased) PostgreSQL version 14.12
See the system requirements for more details about Juju versions and other software and hardware prerequisites.
Integration tests
Below are the charm integrations tested with this revision on different Juju environments and architectures:
- Juju
v2.9.50onamd64 - Juju
v3.4.5onamd64andarm64
Juju v2.9.50 on amd64
| Software | Version |
|---|---|
| tls-certificates-operator | rev 22, legacy/stable |
Juju v3.4.5 on amd64 and arm64
| Software | Version |
|---|---|
| self-signed-certificates | rev 155, latest/stable |
All
| Software | Version |
|---|---|
| microk8s | v.1.31, strict/stable |
| indico | rev 213 |
| discourse-k8s | rev 124 |
| data-integrator | rev 41 |
| s3-integrator | rev 31 |
| postgresql-test-app | rev 239 |
See the /lib/charms directory on GitHub for more details about all supported libraries.
See the metadata.yaml file on GitHub for a full list of supported interfaces.
Packaging
This charm is based on the Charmed PostgreSQL K8s rock image
(CharmHub postgresql-image resource-revision is 162). It packages:
- postgresql
v.14.12 - pgbouncer
v.1.21 - patroni
v.3.1.2 - pgBackRest
v.2.48 - prometheus-postgres-exporter
v.0.12.1
Dependencies and automations
This section contains a list of updates to libs, dependencies, actions, and workflows.
- Updated canonical/charming-actions action to v2.6.3 (PR #673)
- Updated data-platform-workflows to v21.0.1 (PR #660)
- Updated dependency canonical/microk8s to v1.31 (PR #632)
- Updated dependency cryptography to v43.0.1(PR #681)
- Updated dependency juju/juju to v2.9.50 (PR #589)
- Updated dependency juju/juju to v3.4.5 (PR #599)
- Updated dependency tenacity to v9 (PR #600)
- Updated ghcr.io/canonical/charmed-postgresql:14.12-22.04_edge Docker digest to 7ef86a3 (PR #655)
- Updated rock to 14.12 (PR #563)
- Switch Jira issue sync from workflow to bot (PR #636)
- Use poetry package-mode=false (PR #594)
- Updated logging: bump lib and introduce pebble log forwarding (PR #486)
- Updated postgresql lib (PR #546)
- Bumped coverage (PR #623)
- Test service patch lib update (PR #624)