Life with Open Source

PostgreSQL 20.0 (upcoming) commit log

Fix restore of partitions with exclusion constraints

commit   : d049a31a4cd2d43739ae0039002c24c63a24d48c    
  
author   : Álvaro Herrera <alvherre@kurilemu.de>    
date     : Mon, 20 Jul 2026 17:21:20 +0200    
  
committer: Álvaro Herrera <alvherre@kurilemu.de>    
date     : Mon, 20 Jul 2026 17:21:20 +0200    

Click here for diff

Commit 8c852ba9a4 allowed exclusion constraints to be added to  
partitioned tables, but wasn't careful to verify that pg_restore worked  
correctly for them.  Fix that by making CompareIndexInfo() more  
selective about what needs to be rejected.  
  
Author: Japin Li <japinli@hotmail.com>  
Reported-by: Keith Paskett <keith.paskett@logansw.com>  
Discussion: https://postgr.es/m/2A40921D-83AB-411E-ADA6-7E509A46F1E4@logansw.com  

M src/backend/catalog/index.c
M src/test/regress/expected/indexing.out
M src/test/regress/sql/indexing.sql

pgBackRest 2.65 commit log

v2.59.0: PostgreSQL 19 Support

commit   : f84c8357d49ea9452cd606531e9c4c322c41bc2e    
  
author   : David Steele <david@pgbackrest.org>    
date     : Mon, 20 Jul 2026 15:13:35 +0700    
  
committer: GitHub <noreply@github.com>    
date     : Mon, 20 Jul 2026 15:13:35 +0700    

Click here for diff

NOTE TO PACKAGERS: A new distribution tarball is available which simplifies the build process by providing pregenerated HTML documentation, man page, and code. The tarball is attached to each release as an asset and is named pgbackrest-{version}.tar.gz. See the README.md in the tarball for details. Please use the new distribution tarball to avoid the additional build tooling required to generate code in future releases.  
  
NOTE TO PACKAGERS: There is a new optional dependency on libsystemd.  
  
IMPORTANT NOTE: Starting with this release, only the restore command may be run as root by default. Use allow-root to run other commands as root (though this is not recommended).  
  
Bug Fixes:  
  
* Fix expire removing a backup in progress on another host. (Reviewed by Douglas J Hunley. Reported by Dmitrii.)  
* Fix archive-push-queue-max not enforced when a WAL file errors. (Reviewed by Stefan Fercot. Reported by vut12.)  
* Fix async archive-get failure during recovery across a timeline switch. (Reviewed by Douglas J Hunley. Reported by Jimmy Yih.)  
* Fix potential buffer overrun in error module. (Fixed by Christophe Pettus. Reviewed by David Steele.)  
* Fix use-after-free of parallel protocol client. (Reviewed by Douglas J Hunley. Reported by Georgy Shelkovy.)  
* Fix heap overflow when a pg option is set without pg1. (Reviewed by Douglas J Hunley. Reported by Naveen.)  
  
Features:  
  
* PostgreSQL 19beta2 support. (Reviewed by Stefan Fercot.)  
* Add archive-expire-before option to clean up WAL archive. (Contributed by Stefan Fercot. Reviewed by David Steele.)  
* Add batch delete for Azure storage. (Reviewed by Douglas J Hunley, Crispy.)  
* Add support for S3 Outposts. (Contributed by Shiva Kumar Ambigi. Reviewed by David Steele, Roberto Mello.)  
* Add S3 process authentication. (Reviewed by Andrew Charlton. Suggested by Andrew Charlton.)  
  
Improvements:  
  
* Reconnect SFTP storage after the server drops an idle connection. (Reviewed by Stefan Fercot. Suggested by mustafa0x, tisserat.)  
* Add user/group caching for faster manifest build. (Contributed by Gunnar Lindholm. Reviewed by David Steele.)  
* Add per-repo backup progress to info command output. (Contributed by Will Morland. Reviewed by David Steele, Stefan Fercot.)  
* Add backup.info checks to verify command. (Contributed by Denis Garsh. Reviewed by David Steele, Douglas J Hunley.)  
* Allow the S3 STS endpoint to be configured. (Contributed by Simon Gratton. Reviewed by David Steele.)  
* Add archive-push-batch-size to limit WAL pushed per asynchronous run. (Reviewed by Stefan Fercot.)  
* Exit async archive-push on first error. (Reviewed by Stefan Fercot. Suggested by Lardière Sébastien.)  
* Harden HTTP chunked response parsing. (Contributed by Shubham. Reviewed by David Steele.)  
* Error when running as root unless allow-root is enabled. (Reviewed by Douglas J Hunley.)  
* Fewer binary searches when building manifest. (Contributed by Gunnar Lindholm. Reviewed by David Steele.)  
* Improve seek performance during block incremental delta restore. (Reviewed by David Christensen, Douglas J Hunley.)  
* Bundle backup files in order rather than scanning for a better fit. (Reviewed by Stefan Fercot.)  
* Report the underlying error when a query fails to complete. (Reviewed by Andrew Pogrebnoi. Suggested by Marco Fontana.)  
* Report the actual error when an S3 credential request fails. (Reviewed by Douglas J Hunley. Suggested by Mitchell Grice.)  
* Report archive-push spool path errors to the PostgreSQL log. (Reviewed by Douglas J Hunley. Suggested by Don Seiler.)  
* Hint that pgBackRest may be out of date when a version is unsupported.  
* Add systemd notify integration. (Contributed by Andrew Jackson. Reviewed by David Steele.)  
* Suppress unused parameter errors in meson compiler probes. (Contributed by Jörg Plate. Reviewed by David Steele.)  
* C11 is now the minimum C standard. (Reviewed by Mohammad Ali Nazir Kosar.)  
  
Documentation Improvements:  
  
* Make stanza option internal for the repo-* commands. (Reviewed by Stefan Fercot.)  
* Document that info reads encryption settings from global section. (Reviewed by Stefan Fercot. Suggested by Ron Johnson.)  
* Document that expire-auto uses the backup command configuration. (Reviewed by Stefan Fercot. Suggested by Lardière Sébastien.)  
* Document adjusting the logrotate su directive for a dedicated user. (Reviewed by Douglas J Hunley. Suggested by lkanbus.)  
* Document that end-of-line comments are not supported in config files. (Reviewed by Douglas J Hunley. Suggested by Alex Richman.)  
  
Test Suite Improvements:  
  
* Fix Alpine group conflicts in CI containers. (Contributed by Artur Zakirov. Reviewed by David Steele.)

M .github/workflows/test-dist.yml
M CONTRIBUTING.md
M README.md
M doc/RELEASE.md
M doc/manifest.xml
M doc/resource/exe.cache
M doc/resource/git-history.cache
M doc/xml/auto/metric-coverage-report.auto.xml
M doc/xml/index.xml
M doc/xml/news.xml
M doc/xml/release/2020s/2026/2.59.0.xml
M meson.build
M src/version.h

PostgreSQL 19.0 (upcoming) commit log

Fix RLS checks for FOR PORTION OF leftover rows

commit   : c58c83ce50cf65ee45bd60910f710a2bd251cc36    
  
author   : Peter Eisentraut <peter@eisentraut.org>    
date     : Mon, 20 Jul 2026 08:38:08 +0200    
  
committer: Peter Eisentraut <peter@eisentraut.org>    
date     : Mon, 20 Jul 2026 08:38:08 +0200    

Click here for diff

UPDATE/DELETE FOR PORTION OF may insert leftover rows to preserve the  
parts of the old row that are outside the target range.  Those inserts  
go through ExecInsert(), which checks RLS policies using  
WCO_RLS_INSERT_CHECK.  
  
However, the rewriter only added RLS WITH CHECK options for the  
original statement command.  For UPDATE, that meant only  
WCO_RLS_UPDATE_CHECK options were available, so ExecInsert() skipped  
them.  For DELETE, no RLS WITH CHECK options were added at all.  As a  
result, leftover rows could be inserted even when they violated INSERT  
RLS policies.  
  
Fix this by adding INSERT RLS WITH CHECK options for UPDATE/DELETE FOR  
PORTION OF target relations.  Also add regression coverage for both  
UPDATE and DELETE, including cases where allowed leftovers still  
succeed and disallowed leftovers are rejected.  
  
Author: Chao Li <lic@highgo.com>  
Co-authored-by: Paul A Jungwirth <pj@illuminatedcomputing.com>  
Reviewed-by: Paul A Jungwirth <pj@illuminatedcomputing.com>  
Reviewed-by: Ayush Tiwari <ayushtiwari.slg01@gmail.com>  
Reviewed-by: Dean Rasheed <dean.a.rasheed@gmail.com>  
Discussion: https://www.postgresql.org/message-id/flat/6C34A987-AC50-4477-BD71-2D4AFEE1A589%40gmail.com  
Discussion: https://www.postgresql.org/message-id/flat/CAJTYsWWdeBkoH5g8D-k9LDw9ciqsMxb21EJSiFXAzP4J%3DXyxOQ%40mail.gmail.com  

M doc/src/sgml/ref/create_policy.sgml
M doc/src/sgml/ref/delete.sgml
M doc/src/sgml/ref/update.sgml
M src/backend/rewrite/rowsecurity.c
M src/test/regress/expected/for_portion_of.out
M src/test/regress/expected/rowsecurity.out
M src/test/regress/sql/for_portion_of.sql
M src/test/regress/sql/rowsecurity.sql

PostgreSQL 14.23 commit log

Stamp 14.23.

commit   : 4e1a23c0ea0be0214c6806baa212886cee8f14a6    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 15:51:39 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 15:51:39 -0400    

Click here for diff

M configure
M configure.ac

Last-minute updates for release notes.

commit   : 93741c9db09709ebe05d5f59ee7852c3ad4981a9    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 14:54:40 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 14:54:40 -0400    

Click here for diff

PostgreSQL 15.18 commit log

Stamp 15.18.

commit   : 005c1971a2926fbb9caf5a1ad634cd17a42bfd3c    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 15:49:58 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 15:49:58 -0400    

Click here for diff

M configure
M configure.ac

Last-minute updates for release notes.

commit   : 78f1b471f991307cea4aa0d95f2d957601a1b8cd    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 14:54:40 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 14:54:40 -0400    

Click here for diff

PostgreSQL 16.14 commit log

Stamp 16.14.

commit   : 0d1c00c624fa7367d4a895f44381887757289682    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 15:48:18 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 15:48:18 -0400    

Click here for diff

M configure
M configure.ac
M meson.build

Last-minute updates for release notes.

commit   : 878e171244f7c1280201a04aa420b78c4a2d08d3    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 14:54:40 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 14:54:40 -0400    

Click here for diff

PostgreSQL 17.10 commit log

Stamp 17.10.

commit   : 25c49f3a4a742ba283f5cc43cc7f1d361552e917    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 15:46:41 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 15:46:41 -0400    

Click here for diff

M configure
M configure.ac
M meson.build

Last-minute updates for release notes.

commit   : 25d938dbcb19ba172068159c0f22826d7cc681ea    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 14:54:40 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 14:54:40 -0400    

Click here for diff

PostgreSQL 18.4 commit log

Stamp 18.4.

commit   : f5cc81719e6da4cbdb1f797c48b693e91018153a    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 15:44:35 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 15:44:35 -0400    

Click here for diff

M configure
M configure.ac
M meson.build

Last-minute updates for release notes.

commit   : bbd12e8010561dab2c745d2ece0e94d102bef2ea    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 14:54:40 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 11 May 2026 14:54:40 -0400    

Click here for diff

PostgreSQL 14.22 commit log

Stamp 14.22.

commit   : 966473719c7f8067848dc79b58da0fb17ed136b1    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 23 Feb 2026 17:03:30 -0500    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 23 Feb 2026 17:03:30 -0500    

Click here for diff

M configure
M configure.ac

Translation updates

commit   : 7917762558545fbe16c0c9e9b97b83a30c11eaa8    
  
author   : Peter Eisentraut <peter@eisentraut.org>    
date     : Mon, 23 Feb 2026 14:06:33 +0100    
  
committer: Peter Eisentraut <peter@eisentraut.org>    
date     : Mon, 23 Feb 2026 14:06:33 +0100    

Click here for diff

PostgreSQL 15.17 commit log

Stamp 15.17.

commit   : 3eb6f61958ac5027a18791a828a0c7a47accf211    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 23 Feb 2026 17:01:47 -0500    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 23 Feb 2026 17:01:47 -0500    

Click here for diff

M configure
M configure.ac

Translation updates

commit   : 7063b9e92b25caaa27c8cc4ec37ef85fe9e63cb7    
  
author   : Peter Eisentraut <peter@eisentraut.org>    
date     : Mon, 23 Feb 2026 14:03:47 +0100    
  
committer: Peter Eisentraut <peter@eisentraut.org>    
date     : Mon, 23 Feb 2026 14:03:47 +0100    

Click here for diff