Life with Open Source

PostgreSQL 20.0 (upcoming) commit log

Mark GUC-dependent type output functions as STABLE

commit   : e75fcc9867fdfe295957ad5c9a98cbe2e1b4c5c3    
  
author   : Fujii Masao <fujii@postgresql.org>    
date     : Tue, 20 Oct 2026 15:07:11 +0900    
  
committer: Fujii Masao <fujii@postgresql.org>    
date     : Tue, 20 Oct 2026 15:07:11 +0900    

Click here for diff

byteaout and pg_mcv_list_out depend on bytea_output GUC, while  
float4out, float8out, and the geometric type output functions depend  
on extra_float_digits GUC. The BRIN minmax-multi summary output  
function also calls the summarized type's output function, so its result  
can depend on the type's output settings.  
  
Mark these functions STABLE instead of IMMUTABLE to reflect their  
dependence on session settings. This prevents them from being used in  
expressions that require immutability, such as expression indexes,  
generated columns, and partition keys.  
  
Do not backpatch, since this changes catalog entries and can break  
existing schemas that rely on these output functions being immutable.  
  
Bump catalog version.  
  
Reported-by: 放空 <jj-zhang25@mails.tsinghua.edu.cn>  
Author: Fujii Masao <masao.fujii@gmail.com>  
Reviewed-by: Peter Eisentraut <peter@eisentraut.org>  
Discussion: https://postgr.es/m/19644-d6db3fb5e5ad92f4@postgresql.org  

M src/include/catalog/catversion.h
M src/include/catalog/pg_proc.dat

PostgreSQL 19.0 (upcoming) commit log

Fix two issues in deparsing.

commit   : 0da632e084842c36ec31d87adfc401b54ed7d7b2    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 19 Oct 2026 17:51:09 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 19 Oct 2026 17:51:09 -0400    

Click here for diff

If the target relation of UPDATE, DELETE, or MERGE has an alias,  
we printed that "bare" (without AS or forced quoting), the same  
as we do in FROM.  However, if that alias is "set", there's an  
ambiguity with the SET keyword that must follow the relation  
specification.  The parser would choose the wrong interpretation,  
so that the dumped query would fail to reload.  The least surprising  
and most future-proof fix seems to be to always print AS in these  
contexts, as we already did in INSERT.  
  
Also, we were insufficiently careful about parenthesizing the  
left-hand argument of a SubLink (IN, op ANY/ALL, or row comparison),  
so that the printed expression might not parse back with the intended  
meaning depending on operator precedence.  This is only a problem in  
"pretty-print" mode, since non-pretty mode fully parenthesizes every  
operator.  So it isn't a hazard for pg_dump, but it still seems like  
something to fix.  To do so, switch to using get_rule_expr_paren.  
Presently that will add parens in some cases where it wouldn't really  
be necessary, but that's better than the reverse, and it arguably  
is helpful for readability anyway.  
  
Author: Henson Choi <assam258@gmail.com>  
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>  
Discussion: https://postgr.es/m/CAAAe_zDqXin5NeB5atRCbZqUdcMOeyXRqhan+tVp0F30OCURnw@mail.gmail.com  
Discussion: https://postgr.es/m/CAAAe_zCy+D45Qd_br484F+V34y0BVA=hp_7cb=u6HysyMkE3UQ@mail.gmail.com  
Backpatch-through: 14  

M src/backend/utils/adt/ruleutils.c
M src/test/regress/expected/create_view.out
M src/test/regress/expected/returning.out
M src/test/regress/expected/rules.out
M src/test/regress/sql/create_view.sql

pgBackRest 2.69 commit log

v2.60.0: Page Checksum Errors and Object Store Prefetch

commit   : 2e1c4f2ba727c45a0a23d4b326905088dc15b1a1    
  
author   : David Steele <david@pgbackrest.org>    
date     : Sun, 18 Oct 2026 10:31:33 +0200    
  
committer: David Steele <david@pgbackrest.org>    
date     : Sun, 18 Oct 2026 10:31:33 +0200    

Click here for diff

IMPORTANT NOTE: The restore command will now error and stop if any restored file contains an invalid page checksum, which leaves the cluster incomplete and unable to start, so the restore must be rerun. The expire command will now refuse to expire if the oldest retained backup would contain checksum errors, which also prevents archive from being expired in that repository. Set checksum-page-error=n to warn instead of erroring.  
  
Features:  
  
* Add checksum-page-error option to error on invalid page checksums. (Contributed by Andrew Pogrebnoi. Reviewed by Douglas J Hunley, David Steele, Greg Sabino Mullane, Stefan Fercot. Suggested by Greg Sabino Mullane.)  
* Support for GCS Workload Identity Federation. (Contributed by Adol Rodriguez. Reviewed by Douglas J Hunley, David Steele.)  
* Prefetch multi-file/range reads from object stores. (Reviewed by Andrew Pogrebnoi, Douglas J Hunley.)  
  
Improvements:  
  
* Reduce keep-alive requests to remote processes. (Reviewed by Douglas J Hunley.)  
* Retry Azure batch sub-requests missing from the response. (Reviewed by Douglas J Hunley.)  
* Reduce the manifest checks made when reconstructing backup.info. (Reviewed by Douglas J Hunley. Suggested by todeb.)  
* Use original size to determine if a file should be bundled. (Reviewed by Douglas J Hunley.)  
* Add context to block map read errors during backup. (Reviewed by Stefan Fercot, Douglas J Hunley.)  
* Cast current_timestamp to text in the backup start label. (Contributed by Tiago Corcelli de Oliveira. Reviewed by David Steele.)  
* Support building on illumos. (Contributed by Kalevi Kolttonen. Reviewed by Douglas J Hunley, David Steele.)  
* Support OpenSSL 4. (Reviewed by Douglas J Hunley.)  
* Fix clang builds. (Reviewed by Douglas J Hunley.)  
* Migrate code generation from C to Python.  
  
Documentation Improvements:  
  
* Modernize the website. Special thanks to Jan for the insightful (and hilarious) logo. (Contributed by David Steele, Jan Wieremjewicz. Reviewed by Steve Atkins, Kai Wagner, Douglas J Hunley, Nikolaos Stamatopoulos, Matt Hudson, Stefan Fercot.)  
* Document the release schedule.  
* Migrate the documentation tools from C and Perl to Python.  
  
Test Suite Improvements:  
  
* Migrate the test harness from C and Perl to Python.  
* Add a Fil-C job to CI.  
* Add fuzz testing for the JSON, Ini, and Pack readers.  
* Allow test user names that adduser on Debian rejects. (Contributed by Stefan Fercot. Reviewed by David Steele.)  

M CONTRIBUTING.md
M README.md
M doc/resource/exe.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 doc/xml/release/2020s/2026/2.59.2.xml
M doc/xml/release/2020s/2026/2.60.0.xml
M meson.build
M src/version.h

pgBackRest 2.68 commit log

v2.59.3: Weak Encryption Subkey Bug

commit   : 46cdca625a73403cad4774d97354a1fac1e91e51    
  
author   : David Steele <david@pgbackrest.org>    
date     : Sun, 4 Oct 2026 09:29:49 +0200    
  
committer: David Steele <david@pgbackrest.org>    
date     : Sun, 4 Oct 2026 09:29:49 +0200    

Click here for diff

IMPORTANT NOTE: In prior versions it was possible for weak encryption subkeys and salts to be generated if there was an error accessing system random data.  
  
Bug Fixes:  
  
* Fix possible checksum error loading encrypted info and manifest files. (Fixed by j0uinim. Reviewed by David Steele.)  
* Fix possible weak encryption subkeys/salts. (Fixed by j0uinim. Reviewed by David Steele, Stefan Fercot, Douglas J Hunley.)  

M CONTRIBUTING.md
M README.md
M doc/RELEASE.md
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.3.xml
M meson.build
M src/version.h

pgBackRest 2.67 commit log

v2.59.2: PostgreSQL 19beta4 Support

commit   : d5138e2e3b92fe806505bc8b9c69f36bd70cea18    
  
author   : David Steele <david@pgbackrest.org>    
date     : Sun, 27 Sep 2026 14:15:45 +0300    
  
committer: David Steele <david@pgbackrest.org>    
date     : Sun, 27 Sep 2026 14:15:45 +0300    

Click here for diff

Bug Fixes:  
  
* Fix empty block map when file is truncated to zero during backup. (Reviewed by Douglas J Hunley. Reported by JPCOSTA78.)  
* Disable read retry when filters are passed to the driver. (Reviewed by Douglas J Hunley. Reported by megamaced.)  
* Fix pagination of S3 version listing. (Reviewed by Douglas J Hunley, guruguruguru. Reported by guruguruguru.)  
* Set the Azure version header for SAS authentication. (Reviewed by Douglas J Hunley. Reported by Florian Helmberger.)  
* Fix async archive-push stalling on a zero-size backup history file. (Fixed by Andrew Kroh. Reviewed by David Steele, Douglas J Hunley.)  
* Fix annotate command on a remote encrypted repository. (Fixed by Douglas J Hunley. Reviewed by David Steele.)  
  
Features:  
  
* PostgreSQL 19beta4 support.  

M CONTRIBUTING.md
M README.md
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.2.xml
M meson.build
M src/version.h

pgBackRest 2.66 commit log

v2.59.1: PostgreSQL 19beta3 Support

commit   : 8c8f3ee63e310f0b3ea10b55ed3b96b4cc9296da    
  
author   : David Steele <david@pgbackrest.org>    
date     : Mon, 17 Aug 2026 16:08:40 +0700    
  
committer: David Steele <david@pgbackrest.org>    
date     : Mon, 17 Aug 2026 16:08:40 +0700    

Click here for diff

Bug Fixes:  
  
* Fix hang when the chunk buffer is smaller than the input buffer. (Reviewed by Andrew Pogrebnoi, Douglas J Hunley. Reported by crajac66.)  
* Compare a new backup label only against its own full backup set. (Reviewed by Douglas J Hunley. Reported by Anton Glushakov.)  
* Fix source archives generated by GitHub missing files required to build. (Reported by aardvarkzed.)  
  
Features:  
  
* PostgreSQL 19beta3 support. (Contributed by Lardière Sébastien. Reviewed by David Steele.)  
  
Documentation Improvements:  
  
* Document exception for dots in S3 bucket names when repo-s3-uri-style=path.  
* Remove explicit hot_standby configuration from user guide.  

M CONTRIBUTING.md
M README.md
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.1.xml
M doc/xml/release/contributor.xml
M meson.build
M src/version.h

PostgreSQL 18.5 commit log

Stamp 18.6.

commit   : 724edf9bde9d356724ad384a2e196edc3c9f80f7    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Tue, 11 Aug 2026 14:38:31 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Tue, 11 Aug 2026 14:38:31 -0400    

Click here for diff

M configure
M configure.ac
M meson.build

Release notes for 18.6.

commit   : 841d0cb0f9b8b1b25e7b299ac0eb134074b45a08    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Tue, 11 Aug 2026 14:37:01 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Tue, 11 Aug 2026 14:37:01 -0400    

Click here for diff

PostgreSQL 14.24 commit log

Stamp 14.24.

commit   : 6b3806732b7c5df06bdd0ed150e8a07b4ad62315    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 16:59:18 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 16:59:18 -0400    

Click here for diff

M configure
M configure.ac

Update .abi-compliance-history for security fixes.

commit   : 18ec528b8c3804f4c101e3a8d091ada7c5a40bb4    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 12:35:49 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 12:35:49 -0400    

Click here for diff

PostgreSQL 15.19 commit log

Stamp 15.19.

commit   : 2ff1375b5dd8bf09d8cb0e795974528180fd75ca    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 16:57:41 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 16:57:41 -0400    

Click here for diff

M configure
M configure.ac

Update .abi-compliance-history for security fixes.

commit   : 492b517f362a4325bbcd6c1aa6f1204b7696d7ed    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 12:35:48 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 12:35:48 -0400    

Click here for diff

PostgreSQL 16.15 commit log

Stamp 16.15.

commit   : 7d3e000c5961a544302072058a1184e9a588837b    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 16:56:00 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 16:56:00 -0400    

Click here for diff

M configure
M configure.ac
M meson.build

Update .abi-compliance-history for security fixes.

commit   : a5c8e521cf9e2d2334cf3c94ed64edb397b00e01    
  
author   : Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 12:35:48 -0400    
  
committer: Tom Lane <tgl@sss.pgh.pa.us>    
date     : Mon, 10 Aug 2026 12:35:48 -0400    

Click here for diff