Waiting for PostgreSQL 18 – Add function to get memory context stats for processes

On 8th of April 2025, Daniel Gustafsson committed patch: Add function to get memory context stats for processes   This adds a function for retrieving memory context statistics and information from backends as well as auxiliary processes. The intended usecase is cluster debugging when under memory pressure or unanticipated memory usage characteristics.   When calling … Continue reading “Waiting for PostgreSQL 18 – Add function to get memory context stats for processes”

Waiting for PostgreSQL 18 – Allow NOT NULL constraints to be added as NOT VALID

On 7th of April 2025, Álvaro Herrera committed patch: Allow NOT NULL constraints to be added as NOT VALID   This allows them to be added without scanning the table, and validating them afterwards without holding access exclusive lock on the table after any violating rows have been deleted or fixed.   Doing ALTER TABLE … Continue reading “Waiting for PostgreSQL 18 – Allow NOT NULL constraints to be added as NOT VALID”

Waiting for PostgreSQL 18 – Add modern SHA-2 based password hashes to pgcrypto.

On 5th of April 2025, Álvaro Herrera committed patch: Add modern SHA-2 based password hashes to pgcrypto.   This adapts the publicly available reference implementation on https://www.akkadia.org/drepper/SHA-crypt.txt and adds the new hash algorithms sha256crypt and sha512crypt to crypt() and gen_salt() respectively.   Author: Bernd Helmle <mailings@oopsware.de> Reviewed-by: Japin Li <japinli@hotmail.com> Discussion: https://postgr.es/m/c763235a2757e2f5f9e3e27268b9028349cef659.camel@oopsware.de

Waiting for PostgreSQL 18 – Non text modes for pg_dumpall, correspondingly change pg_restore

On 4th of April 2025, Andrew Dunstan committed patch: Non text modes for pg_dumpall, correspondingly change pg_restore   pg_dumpall acquires a new -F/–format option, with the same meanings as pg_dump. The default is p, meaning plain text. For any other value, a directory is created containing two files, globals.data and map.dat. The first contains SQL … Continue reading “Waiting for PostgreSQL 18 – Non text modes for pg_dumpall, correspondingly change pg_restore”

Waiting for PostgreSQL 18 – Allow json{b}_strip_nulls to remove null array elements

On 5th of March 2025, Andrew Dunstan committed patch: Allow json{b}_strip_nulls to remove null array elements   An additional paramater ("strip_in_arrays") is added to these functions. It defaults to false. If true, then null array elements are removed as well as null valued object fields. JSON that just consists of a single null is not … Continue reading “Waiting for PostgreSQL 18 – Allow json{b}_strip_nulls to remove null array elements”

Waiting for PostgreSQL 18 – Allow parallel CREATE INDEX for GIN indexes

On 3rd of March 2025, Tomas Vondra committed patch: Allow parallel CREATE INDEX for GIN indexes   Allow using parallel workers to build a GIN index, similarly to BTREE and BRIN. For large tables this may result in significant speedup when the build is CPU-bound.   The work is divided so that each worker builds … Continue reading “Waiting for PostgreSQL 18 – Allow parallel CREATE INDEX for GIN indexes”

Waiting for PostgreSQL 18 – Allow EXPLAIN to indicate fractional rows.

On 21st of February 2025, Robert Haas committed patch: Allow EXPLAIN to indicate fractional rows.   When nloops > 1, we now display two digits after the decimal point, rather than none. This is important because what we print is actually planstate->instrument->ntuples / nloops, and sometimes what you want to know is planstate->instrument->ntuples. You can … Continue reading “Waiting for PostgreSQL 18 – Allow EXPLAIN to indicate fractional rows.”

Waiting for PostgreSQL 18 – Virtual generated columns

On 7th of February 2025, Peter Eisentraut committed patch: Virtual generated columns   This adds a new variant of generated columns that are computed on read (like a view, unlike the existing stored generated columns, which are computed on write, like a materialized view).   The syntax for the column definition is   … GENERATED … Continue reading “Waiting for PostgreSQL 18 – Virtual generated columns”

Waiting for PostgreSQL 18 – Add delay time to VACUUM/ANALYZE (VERBOSE) and autovacuum logs.

On 14th of February 2025, Nathan Bossart committed patch: Add delay time to VACUUM/ANALYZE (VERBOSE) and autovacuum logs.   Commit bb8dff9995 added this information to the pg_stat_progress_vacuum and pg_stat_progress_analyze system views. This commit adds the same information to the output of VACUUM and ANALYZE with the VERBOSE option and to the autovacuum logs.   Suggested-by: … Continue reading “Waiting for PostgreSQL 18 – Add delay time to VACUUM/ANALYZE (VERBOSE) and autovacuum logs.”

Waiting for PostgreSQL 18 – Add cost-based vacuum delay time to progress views.

On 11st of February 2025, Nathan Bossart committed patch: Add cost-based vacuum delay time to progress views.   This commit adds the amount of time spent sleeping due to cost-based delay to the pg_stat_progress_vacuum and pg_stat_progress_analyze system views. A new configuration parameter named track_cost_delay_timing, which is off by default, controls whether this information is gathered. … Continue reading “Waiting for PostgreSQL 18 – Add cost-based vacuum delay time to progress views.”