Waiting for PostgreSQL 16 – Invent random_normal() to provide normally-distributed random numbers.

On 9th of January 2023, Tom Lane committed patch: Invent random_normal() to provide normally-distributed random numbers.   There is already a version of this in contrib/tablefunc, but it seems sufficiently widely useful to justify having it in core.   Paul Ramsey   Discussion: https://postgr.es/m/CACowWR0DqHAvOKUCNxTrASFkWsDLqKMd6WiXvVvaWg4pV1BMnQ@mail.gmail.com

Waiting for PostgreSQL 14 – Allow subscripting of hstore values.

On 11st of December 2020, Tom Lane committed patch: Allow subscripting of hstore values.   This is basically a finger exercise to prove that it’s possible for an extension module to add subscripting ability. Subscripted fetch from an hstore is not different from the existing "hstore -> text" operator. Subscripted update does seem to be … Continue reading “Waiting for PostgreSQL 14 – Allow subscripting of hstore values.”

Waiting for …

Since February of 2008 I am writing series of blogposts that hilight some of the features that get committed to PostgreSQL source, to be available in next released version. These are all of these series, Waiting for … … PostgreSQL 17 … PostgreSQL 16 … PostgreSQL 15 … PostgreSQL 14 … PostgreSQL 13 … PostgreSQL … Continue reading “Waiting for …”

Waiting for PostgreSQL 11 – Support parallel btree index builds.

Support parallel btree index builds.     To make this work, tuplesort.c and logtape.c must also support parallelism, so this patch adds that infrastructure and then applies it to the particular case of parallel btree index builds. Testing to date shows that this can often be 2-3x faster than a serial index build.   The … Continue reading “Waiting for PostgreSQL 11 – Support parallel btree index builds.”

Waiting for 9.6 – Support parallel aggregation.

On 21st of March, Robert Haas committed patch: Support parallel aggregation.   Parallel workers can now partially aggregate the data and pass the transition values back to the leader, which can combine the partial results to produce the final answer.   David Rowley, based on earlier work by Haribabu Kommi. Reviewed by Álvaro Herrera, Tomas … Continue reading “Waiting for 9.6 – Support parallel aggregation.”

Waiting for 9.6 – Directly modify foreign tables.

On 18th of March, Robert Haas committed patch: Directly modify foreign tables.   postgres_fdw can now sent an UPDATE or DELETE statement directly to the foreign server in simple cases, rather than sending a SELECT FOR UPDATE statement and then updating or deleting rows one-by-one.   Etsuro Fujita, reviewed by Rushabh Lathia, Shigeru Hanada, Kyotaro … Continue reading “Waiting for 9.6 – Directly modify foreign tables.”

Waiting for 9.6 – Remove GROUP BY columns that are functionally dependent on other columns.

On 11th of February, Tom Lane committed patch: Remove GROUP BY columns that are functionally dependent on other columns.   If a GROUP BY clause includes all columns of a non-deferred primary key, as well as other columns of the same relation, those other columns are redundant and can be dropped from the grouping; the … Continue reading “Waiting for 9.6 – Remove GROUP BY columns that are functionally dependent on other columns.”

Waiting for 9.6 – Allow per-tablespace effective_io_concurrency

On 8th of September, Alvaro Herrera committed patch: Allow per-tablespace effective_io_concurrency   Per discussion, nowadays it is possible to have tablespaces that have wildly different I/O characteristics from others. Setting different effective_io_concurrency parameters for those has been measured to improve performance.   Author: Julien Rouhaud Reviewed by: Andres Freund

Waiting for 9.5 – Use abbreviated keys for faster sorting of text datums.

On 19th of January, Robert Haas committed patch: Use abbreviated keys for faster sorting of text datums.   This commit extends the SortSupport infrastructure to allow operator classes the option to provide abbreviated representations of Datums; in the case of text, we abbreviate by taking the first few characters of the strxfrm() blob. If the … Continue reading “Waiting for 9.5 – Use abbreviated keys for faster sorting of text datums.”