PostgreSQL
PostgeSQL is a leading open-source SQL database server.
www.postgresql.org
Most Popular This Year
- extension_control_path
Peter Eisentraut: The new GUC specifies a path to look for extension control files. - Add two attributes to pg_stat_database for parallel workers activity
Michael Paquier: Two attributes are added to pg_stat_database:
- parallel_workers_to_launch, counting the total number of parallel workers that were planned to be launched.
- parallel_workers_launched, counting the total number of parallel workers actually launched.
The ratio of both fields can provide hints that there are not enough slots available when launching parallel workers, also useful when pg_stat_statements is not deployed on an instance (i.e. - Support falling back to non-preferred readline implementation with meson
Heikki Linnakangas: To build with -Dreadline=enabled one can use either readline or libedit. - pg_verifybackup: Verify tar-format backups
Robert Haas: This also works for compressed tar-format backups. - Wait for WAL summarization to catch up before creating .partial file
Robert Haas: When a standby is promoted, CleanupAfterArchiveRecovery() may decide to rename the final WAL file from the old timeline by adding ".partial" to the name. - Fix waits of REINDEX CONCURRENTLY for indexes with predicates or expressions
Michael Paquier: As introduced by f9900df5f94, a REINDEX CONCURRENTLY job done for an index with predicates or expressions would set PROC_IN_SAFE_IC in its MyProc->statusFlags, causing it to be ignored by other concurrent operations.
Such concurrent index rebuilds should never be ignored, as a predicate or an expression could call a user-defined function that accesses a different table than the table where the index is rebuilt.
A test that uses injection points is added, backpatched down to 17. - Log the conflicts while applying changes in logical replication
Amit Kapila: This patch provides the additional logging information in the following conflict scenarios while applying changes:
insert_exists: Inserting a row that violates a NOT DEFERRABLE unique constraint. - Speed up Hash Join by making ExprStates support hashing
David Rowley: Here we add ExprState support for obtaining a 32-bit hash value from a list of expressions. - injection_points: Add some fixed-numbered statistics
Michael Paquier: Like 75534436a477, this acts mainly as a template to show what can be achieved with fixed-numbered stats (like WAL, bgwriter, etc.) with the pluggable cumulative statistics APIs introduced in 7949d9594582.
Fixed-numbered stats are defined in their own file, named injection_stats_fixed.c, separated entirely from the variable-numbered case in injection_stats.c. - pg_stat_statements: Add columns to track parallel worker activity
Michael Paquier: The view pg_stat_statements gains two columns:- parallel_workers_to_launch, the number of parallel workers planned to be launched.- parallel_workers_launched, the number of parallel workers actually launched.
The ratio of both columns offers hints that parallel workers are lacking on a per-statement basis, requiring some tuning, in coordination with "calls", the number of times a query is executed.
As of now, these numbers are tracked within Gather and GatherMerge nodes.