Postgres 15 Configuration Changes
A few years ago around the time PostgreSQL 12 was released, I
created a tool to help
identify the changes to postgresql.conf
. The pgConfig tool has helped me become
(and stay) aware of important changes to Postgres configuration as I work with
various major version upgrades.
Now that Postgres 15
is available,
pgConfig is updated
with the latest
configuration.
This post provides a quick look at changes in the Postgres 15
version of the postgresql.conf
options.
Summary of changes
The postgresql.conf
for Postgres 15 has 6 new items,
3 changed items and 1 removed item. Visit the
pgConfig site
to see the full list of changes.
Changes to logging and statistics
Postgres 15 introduces a new logging option, and changes two existing logging
options to be enabled by default.
The new log option is log_startup_progress_interval
, default 10s
, enables
logging slow steps during the server start-up process.
The log_checkpoints
option is now on
by default,
and log_autovacuum_min_duration
is set to 10min
.
These options are described in the
Error Reporting and Logging
section.
Another new config option is stats_fetch_consistency
, default cache
.
Postgres 15 is changing how
statistics are collected
to use shared memory instead of a back end process that writes to disk.
This change is related to a new function,
pg_stat_clear_snapshot()
, and the removal of the stats_temp_directory
option. If you use database statistics,
it is worth reading the
viewing statistics
section.
Intriguing addition
The last change I cover in this post hints at a new performance tuning option
for workloads using recursive queries.
The
recursive_worktable_factor
option,
default 10
, allows the query planner to provide better plans on recursive
queries.
If this is a feature that matters to you, the mailing list discussion
is worth reading for the context and intent behind this option.
If you use recursive queries, it will probably be worthwhile to test
the impact of increasing/decreasing this value for your specific use case.
Summary
This post highlighted changes in the configuration options of Postgres 15. There are a few changes to logging and statistics, and possibly some ability to improve specific recursive queries. Outside of configuration file options, Postgres 15 brings a lot of improvement to the table. I am excited for improvements to unique constraints with null values and the performance enhancements with sorting.
Now that my book Mastering PostGIS and OpenStreetMap is released, I am excited to spend more time putting Postgres 15 to the test!
Need help with your PostgreSQL servers or databases? Contact us to start the conversation!