2024.04.1 Release
Docker tag: quay.io/pganalyze/enterprise:v2024.04.1
Notes
- This is a patch release on top of 2024.04.0
- This release does not have any new database migrations, and is easy to apply (or rollback)
- If you're upgrading from a release before 2024.04.0, be sure to read those release notes, and follow the recommended upgrade steps
Features
- Index Advisor
- Add support for "pg_bigm", "cube", "earthdistance" and "ltree" extensions
- Add ability to filter out acknowledged state insights
Other improvements
- Improve support of read-only filesystems by writing license response file to temporary folder
- This avoids having to make the
/home/app
folder writeable for thelicense_response.json
file, and instead only requires the$TMPDIR
folder (typically/tmp
) to be writeable.
- This avoids having to make the
- Add option to source
$INIT_SCRIPT
at startup- This enables easier use of external secret management tools in a Kubernetes environment,
since you can now directly have the container source a file previously written in an init
container, instead of having to manually use "bash -c" to source that file first. To use,
first have an init container write a file to a volume mount, and then mount that same volume
to the main pganalyze container and set
INIT_SCRIPT
to the file location. The file should containexport VARIABLE=value
statements, e.g. to set theLICENSE_KEY
orDATABASE_URL
- This enables easier use of external secret management tools in a Kubernetes environment,
since you can now directly have the container source a file previously written in an init
container, instead of having to manually use "bash -c" to source that file first. To use,
first have an init container write a file to a volume mount, and then mount that same volume
to the main pganalyze container and set
- Allow configuring ports used inside Enterprise Server container
- This allows overriding the following port settings:
PORT
(default to 5000), where the reverse proxy listens for HTTP requestsSSL_PORT
(default to 5001), where the reverse proxy listens for HTTPS requestsAPP_PORT
(default to 5002), where the main app listens for the reverse proxySNAPSHOT_PORT
(default to 5003), where the snapshot API listens for the reverse proxy
- We only recommend changing these when needed and recommend not changing
APP_PORT
andSNAPSHOT_PORT
as they should be considered internal details that are subject to change
- This allows overriding the following port settings:
- Add support for built-in nginx to Enterprise slim images
- This was added in the last Enterprise release (2024.04.0) to support reverse proxying to either the regular application or the snapshot API on the same port (5000), depending on path.
- However we omitted to properly support this for the slim Enterprise images at the time. This adds the package, allowing to run "web" for starting up a web server that handles both regular app requests and the snapshot API
- Allow directly running Enterprise Server "slim" image as non-root user
- Generically the Enterprise Server image will drop privileges to the "app" user as soon as it can, but container boot-up was historically still done as the "root" user inside the container.
- With this change, when using the Enterprise Server "slim" images (that is, the images which do not run an init system,
requiring separate containers/pods to be deployed for different functions, such as web/worker/collector),
you can now specify the app user (
app
, UID 1000) directly on the container host, guaranteeing the container guest OS never runs as root
- Automated EXPLAIN
- View EXPLAIN Source: Hide "Async Capable" field when converting from JSON to text format
- Add a better support for handling new lines with the text log format
- Correctly convert I/O timing output for Postgres 15+ to JSON format if needed
Bugfixes
- Bundled nginx configuration: Correctly handle
X-Forwarded-Proto
set by upstream load balancers / proxies- This avoids SSL related redirect problems, or SAML single-sign on issues caused by the recent addition of nginx as a reverse proxy inside the Enterprise Server container image.
- Index Advisor:
- Avoid Internal Error for tables that had no scans/query activity in the last 7 days
- Avoid errors when unsupported index types/data types are referenced by a table
Security
- Routine security updates to packages in the base image and library dependencies
Couldn't find what you were looking for or want to talk about something specific?
Start a conversation with us →