Crunchy Data announces the release of the PostgreSQL Operator 4.5.2 on February 23, 2021.
The PostgreSQL Operator is released in conjunction with the Crunchy Container Suite.
PostgreSQL Operator 4.5.2 release includes the following software versions upgrades:
- PostgreSQL is now at versions 13.2, 12.6, 11.11, 10.16, 9.6.21, and 9.5.25.
- pgnodemx now uses version 1.0.3
PostgreSQL Operator is tested against Kubernetes 1.17 - 1.20, OpenShift 3.11, OpenShift 4.4+, Google Kubernetes Engine (GKE), Amazon EKS, Microsoft AKS, and VMware Enterprise PKS 1.3+, and works on other Kubernetes distributions as well.
Changes
crunchy-postgres-exporter
now exposes several pgMonitor metrics related topg_stat_statements
.- When using the
--restore-from
option onpgo create cluster
to create a new PostgreSQL cluster, the cluster bootstrap Job is now automatically removed if it completes successfully. - PostgreSQL JIT compilation is explicitly disabled on new cluster creation. This prevents a memory leak that has been observed on queries coming from the metrics exporter.
- The
--compress-type
flag is now supported for the backup options (--backup-opts
) for pgBackRest backups withpgo backup
.none
,gz
,bz2
, andlz4
are all supported. Presentlyzst
is not supported. - The post-cluster creation pgBackRest tasks, i.e. creating a stanza and creating an initial backup, are now deleted by the Operator should they complete successfully. Besides good housekeeping, this provides a workaround for an OpenShift 3.11 bug that was causing the Operator to continuously issue pgBackRest backups during an OpenShift refresh cycle. Reported by Paul Heinen (@v3nturetheworld).
- Add the
--no-prompt
flag topgo upgrade
. The mechanism to disable the prompt verification was already in place, but the flag was not exposed. Reported by (@devopsevd). - Removes certain characters that causes issues in shell environments from consideration when using the random password generator, which is used to create default passwords or with
--rotate-password
. - Allow for the
--link-map
attribute for a pgBackRest option, which can help with the restore of an existing cluster to a new cluster that adds an external WAL volume.
Fixes
- Fix issue where
pgo test
would indicate every Service was a replica if the cluster name contained the wordreplica
in it. Reported by Jose Joye (@jose-joye). - Do not consider Evicted Pods as part of
pgo test
. This eliminates a behavior where faux primaries are considered as part ofpgo test
. Reported by Dennis Jacobfeuerborn (@dennisjac). - Fix
pgo df
to not fail in the event it tries to execute a command within a dangling container from the bootstrap process whenpgo create cluster --restore-from
is used. Reported by Ignacio J.Ortega (@IJOL). pgo df
will now only attempt to execute in running Pods, i.e. it does not attempt to run in evicted Pods. Reported by (@kseswar).- Ensure the sync replication ConfigMap is removed when a cluster is deleted.
- Fix crash in shutdown logic when attempting to shut down a cluster where no primaries exist. Reported by Jeffrey den Drijver (@JeffreyDD).
- Fix syntax in recovery check command which could lead to failures when manually promoting a standby cluster. Reported by (@SockenSalat).
- Fix potential race condition that could lead to a crash in the Operator boot when an error is issued around loading the
pgo-config
ConfigMap. Reported by Aleksander Roszig (@AleksanderRoszig). - Do not trigger a backup if a standby cluster fails over. Reported by (@aprilito1965).
- Fix issue with
pgo backup
where it was unable to take a backup from a new primary afterpgo failover
was called. Reported by (@mesobreira). - On initialization, check that primary PostgreSQL Deployment is created before attempting to scale.
- Ensure
archive_mode
is forced toon
when performing using the "restore in place" method. This ensures that the timeline is correctly incremented post-restore, which could manifest itself with various types of WAL archive failures. - Ensure pgBouncer Secret is created when adding it to a standby cluster.
- Generally improvements to initialization of a standby cluster.
- Ensure proper label parsing based on Kubernetes rules and that it is consistently applied across all functionality that uses labels. Reported by José Joye (@jose-joye).
- Remove legacy
defaultMode
setting on the volume instructions for the pgBackRest repo Secret as thereadOnly
setting is used on the mount itself. Reported by (@szhang1). - Only attempts to start scheduled backups in running pgBackRest repository Pods. Reported by Satria Sahputra (@satriashp).
- Allow for
Restart
API server permission to be explicitly set. Reported by Aleksander Roszig (@AleksanderRoszig). - Update
pgo-target
permissions to match expectations for modern Kubernetes versions. - Support the substitution for the limit on the number of queries to include the the
pg_stat_statements
support of pgMonitor. Defaults to 20, which is the pgMonitor upstream value. Contributed by Steven Siahetiong (@ssiahetiong). - Major upgrade container now includes references for
pgnodemx
. - During a major upgrade, ensure permissions are correct on the old data directory before running
pg_upgrade
. - The metrics stack installer is fixed to work in environments that may not have connectivity to the Internet ("air gapped"). Reported by (@eliranw).