Waiting for …: SQL/JSON is coming back. Hopefully.

This is not the usual Waiting for post, but something should be said. Back in March/April of 2022 Andrew Dunstan committed a series of patches that added support for lots of really interesting features from SQL/JSON standard. While I’m not avid user of json in database, I was very, very happy. Wrote couple of blogposts … Continue reading “Waiting for …: SQL/JSON is coming back. Hopefully.”

Waiting for PostgreSQL 17 – Invent SERIALIZE option for EXPLAIN.

On 3rd of April 2024, Tom Lane committed patch: Invent SERIALIZE option for EXPLAIN.   EXPLAIN (ANALYZE, SERIALIZE) allows collection of statistics about the volume of data emitted by a query, as well as the time taken to convert the data to the on-the-wire format. Previously there was no way to investigate this without actually … Continue reading “Waiting for PostgreSQL 17 – Invent SERIALIZE option for EXPLAIN.”

Waiting for PostgreSQL 17 – Add new COPY option LOG_VERBOSITY.

On 1st of April 2024, Masahiko Sawada committed patch: Add new COPY option LOG_VERBOSITY.   This commit adds a new COPY option LOG_VERBOSITY, which controls the amount of messages emitted during processing. Valid values are ‘default’ and ‘verbose’.   This is currently used in COPY FROM when ON_ERROR option is set to ignore. If ‘verbose’ … Continue reading “Waiting for PostgreSQL 17 – Add new COPY option LOG_VERBOSITY.”

Waiting for PostgreSQL 17 – Add support for MERGE … WHEN NOT MATCHED BY SOURCE.

On 30th of March 2024, Dean Rasheed committed patch: Add support for MERGE … WHEN NOT MATCHED BY SOURCE.   This allows MERGE commands to include WHEN NOT MATCHED BY SOURCE actions, which operate on rows that exist in the target relation, but not in the data source. These actions can execute UPDATE, DELETE, or … Continue reading “Waiting for PostgreSQL 17 – Add support for MERGE … WHEN NOT MATCHED BY SOURCE.”

Waiting for PostgreSQL 17 – Add RETURNING support to MERGE.

On 17th of March 2024, Dean Rasheed committed patch: Add RETURNING support to MERGE.   This allows a RETURNING clause to be appended to a MERGE query, to return values based on each row inserted, updated, or deleted. As with plain INSERT, UPDATE, and DELETE commands, the returned values are based on the new contents … Continue reading “Waiting for PostgreSQL 17 – Add RETURNING support to MERGE.”

Waiting for PostgreSQL 17 – Add new COPY option SAVE_ERROR_TO / Rename COPY option from SAVE_ERROR_TO to ON_ERROR

On 16th of January 2024, Alexander Korotkov committed patch: Add new COPY option SAVE_ERROR_TO   Currently, when source data contains unexpected data regarding data type or range, the entire COPY fails. However, in some cases, such data can be ignored and just copying normal data is preferable.   This commit adds a new option SAVE_ERROR_TO, … Continue reading “Waiting for PostgreSQL 17 – Add new COPY option SAVE_ERROR_TO / Rename COPY option from SAVE_ERROR_TO to ON_ERROR”

Waiting for PostgreSQL 17 – Support identity columns in partitioned tables

On 16th of January 2024, Peter Eisentraut committed patch: Support identity columns in partitioned tables   Previously, identity columns were disallowed on partitioned tables. (The reason was mainly that no one had gotten around to working through all the details to make it work.) This makes it work now.   Some details on the behavior: … Continue reading “Waiting for PostgreSQL 17 – Support identity columns in partitioned tables”

Waiting for PostgreSQL 17 – In plpgsql, allow %TYPE and %ROWTYPE to be followed by array decoration.

On 4th of January 2024, Tom Lane committed patch: In plpgsql, allow %TYPE and %ROWTYPE to be followed by array decoration.   This provides the useful ability to declare a variable that is an array of the type of some other variable or some table column.   Quan Zongliang, Pavel Stehule   Discussion: https://postgr.es/m/ec4523e1-9e7e-f3ef-f9ce-bafd680ad6f6@yeah.net

Waiting for PostgreSQL 17 – ALTER TABLE command to change generation expression

On 4th of January 2024, Peter Eisentraut committed patch: ALTER TABLE command to change generation expression   This adds a new ALTER TABLE subcommand ALTER COLUMN … SET EXPRESSION that changes the generation expression of a generated column.   The syntax is not standard but was adapted from other SQL implementations.   This command causes … Continue reading “Waiting for PostgreSQL 17 – ALTER TABLE command to change generation expression”

Waiting for PostgreSQL 17 – Add support for incremental backup.

On 20th of December 2023, Robert Haas committed patch: Add support for incremental backup.   To take an incremental backup, you use the new replication command UPLOAD_MANIFEST to upload the manifest for the prior backup. This prior backup could either be a full backup or another incremental backup. You then use BASE_BACKUP with the INCREMENTAL … Continue reading “Waiting for PostgreSQL 17 – Add support for incremental backup.”