Improve read_stream.c advice for dense streams.
commit : 7ea8cd15661e3b0da4b57be2f25fdd512951576f
author : Thomas Munro <tmunro@postgresql.org>
date : Sat, 15 Mar 2025 10:23:59 +1300
committer: Thomas Munro <tmunro@postgresql.org>
date : Sat, 15 Mar 2025 10:23:59 +1300
Click here for diff
read_stream.c tries not to issue read-ahead advice when it thinks the
kernel's own read-ahead should be active, ie when using buffered I/O and
reading sequential blocks. It previously gave up too easily, and issued
advice only for the first read of up to io_combine_limit blocks in a
larger range of sequential blocks after random jump. The following read
could suffer an avoidable I/O stall.
Fix, by continuing to issue advice until the corresponding preadv()
calls catch up with the start of the region we're currently issuing
advice for, if ever. That's when the kernel actually sees the
sequential pattern. Advice is now disabled only when the stream is
entirely sequential as far as we can see in the look-ahead window, or
in other words, when a sequential region is larger than we can cover
with the current io_concurrency and io_combine_limit settings.
While refactoring the advice control logic, also get rid of the
"suppress_advice" argument that was passed around between functions to
skip useless posix_fadvise() calls immediately followed by preadv().
read_stream_start_pending_read() can figure that out, so let's
concentrate knowledge of advice heuristics in fewer places (our goal
being to make advice-based I/O concurrency a legacy mode soon).
The problem cases were revealed by Tomas Vondra's extensive regression
testing with many different disk access patterns using Melanie
Plageman's streaming Bitmap Heap Scan patch, in a battle against the
venerable always-issue-advice-and-always-one-block-at-a-time code.
Reviewed-by: Andres Freund <andres@anarazel.de> (earlier version)
Reported-by: Melanie Plageman <melanieplageman@gmail.com>
Reported-by: Tomas Vondra <tomas@vondra.me>
Reported-by: Andres Freund <andres@anarazel.de>
Tested-by: Melanie Plageman <melanieplageman@gmail.com>
Discussion: https://postgr.es/m/CA%2BhUKGK_%3D4CVmMHvsHjOVrK6t4F%3DLBpFzsrr3R%2BaJYN8kcTfWg%40mail.gmail.com
Discussion: https://postgr.es/m/CA%2BhUKGJ3HSWciQCz8ekP1Zn7N213RfA4nbuotQawfpq23%2Bw-5Q%40mail.gmail.com
M src/backend/storage/aio/read_stream.c
Stamp 13.20.
commit : c8f198c3acb59ed858b5b9b88b4fbc55cece544e
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 17 Feb 2025 16:17:13 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 17 Feb 2025 16:17:13 -0500
Click here for diff
M configure
M configure.in
Translation updates
commit : a282099583039633a8aa83953a0c4e72fca95423
author : Álvaro Herrera <alvherre@alvh.no-ip.org>
date : Mon, 17 Feb 2025 17:51:30 +0100
committer: Álvaro Herrera <alvherre@alvh.no-ip.org>
date : Mon, 17 Feb 2025 17:51:30 +0100
Click here for diff
Stamp 14.17.
commit : e5cabe28006995d90cc9ebc613dad072c44c7f4a
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 17 Feb 2025 16:15:49 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 17 Feb 2025 16:15:49 -0500
Click here for diff
M configure
M configure.ac
Translation updates
commit : 50fabe48e39858eacf8a56e0da1ba7610ae537ae
author : Álvaro Herrera <alvherre@alvh.no-ip.org>
date : Mon, 17 Feb 2025 17:51:30 +0100
committer: Álvaro Herrera <alvherre@alvh.no-ip.org>
date : Mon, 17 Feb 2025 17:51:30 +0100
Click here for diff
Stamp 15.12.
commit : 50d3d22baba63613d1f1406b2ed460dc9b03c3fc
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 17 Feb 2025 16:14:22 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 17 Feb 2025 16:14:22 -0500
Click here for diff
M configure
M configure.ac
Translation updates
commit : f815362abecde1aebcd9ddb334fe271edc759eaa
author : Álvaro Herrera <alvherre@alvh.no-ip.org>
date : Mon, 17 Feb 2025 17:51:30 +0100
committer: Álvaro Herrera <alvherre@alvh.no-ip.org>
date : Mon, 17 Feb 2025 17:51:30 +0100
Click here for diff
Stamp 16.8.
commit : 71eb35c0b18de96537bd3876ec9bf8075bfd484f
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 17 Feb 2025 16:13:08 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 17 Feb 2025 16:13:08 -0500
Click here for diff
M configure
M configure.ac
M meson.build
Translation updates
commit : 3b5b99f6f14567396555b6c24a14111f81161e60
author : Álvaro Herrera <alvherre@alvh.no-ip.org>
date : Mon, 17 Feb 2025 17:51:30 +0100
committer: Álvaro Herrera <alvherre@alvh.no-ip.org>
date : Mon, 17 Feb 2025 17:51:30 +0100
Click here for diff
Stamp 17.4.
commit : f8554dee417ffc4540c94cf357f7bf7d4b6e5d80
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 17 Feb 2025 16:11:21 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 17 Feb 2025 16:11:21 -0500
Click here for diff
M configure
M configure.ac
M meson.build
Translation updates
commit : d0ed7d2a5aeb858e814147b42f8681870340909b
author : Álvaro Herrera <alvherre@alvh.no-ip.org>
date : Mon, 17 Feb 2025 17:51:30 +0100
committer: Álvaro Herrera <alvherre@alvh.no-ip.org>
date : Mon, 17 Feb 2025 17:51:30 +0100
Click here for diff
Stamp 13.19.
commit : bf5710d3b6656516d828ebe9f6e2ffd49e54d084
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:28:20 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:28:20 -0500
Click here for diff
M configure
M configure.in
Last-minute updates for release notes.
commit : fa3ddd2ea8d62518f1f523027c55655856d5cc39
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:16:25 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:16:25 -0500
Click here for diff
Stamp 14.16.
commit : 6884202705699820ec9427d1fba7eeba0e2de03e
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:26:37 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:26:37 -0500
Click here for diff
M configure
M configure.ac
Last-minute updates for release notes.
commit : e748064669f40a2dc9cf29b8518902620e47e2db
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:16:25 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:16:25 -0500
Click here for diff
Stamp 15.11.
commit : e3cbae2221c8107fa816673adaea4e357c1393df
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:24:55 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:24:55 -0500
Click here for diff
M configure
M configure.ac
Last-minute updates for release notes.
commit : 1c77ff9f9a0278bb23b3629417ed7ce097c1697a
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:16:25 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:16:25 -0500
Click here for diff
Stamp 16.7.
commit : 61f3dcf2d9f7e2957753a00a5d932eca98b36f64
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:23:16 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:23:16 -0500
Click here for diff
M configure
M configure.ac
M meson.build
Last-minute updates for release notes.
commit : 7e06ffbc6230a6f3e4cdc7599a5617d081d611f7
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:16:25 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:16:25 -0500
Click here for diff
Stamp 17.3.
commit : 3819b30c4c5bbb4e772a6f209fa7bbccccb91a11
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:21:12 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:21:12 -0500
Click here for diff
M configure
M configure.ac
M meson.build
Last-minute updates for release notes.
commit : 1ea6e890b225fa45911f58602b8c425ae0581897
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:16:25 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 10 Feb 2025 18:16:25 -0500
Click here for diff
v2.54.2: Bug Fix
commit : 962346080f859535b9b6395bb34d2d0da9c04684
author : David Steele <david@pgbackrest.org>
date : Mon, 20 Jan 2025 10:18:27 -0500
committer: David Steele <david@pgbackrest.org>
date : Mon, 20 Jan 2025 10:18:27 -0500
Click here for diff
Bug Fixes:
* Fix issue after disabling bundling with block incremental enabled. (Reviewed by David Christensen.)
Documentation Improvements:
* Clarify behavior of multiple configuration files. (Reviewed by Paul Bierly. Suggested by Paul Bierly.)
M CONTRIBUTING.md
M README.md
M doc/resource/exe.cache
M doc/resource/git-history.cache
M doc/xml/release/2025/2.54.2.xml
M meson.build
M src/build/configure.ac
M src/configure
M src/version.h
M test/code-count/file-type.yaml
v2.54.1: Bug Fix
commit : 9b72bfd9b2d63aef346c0f696c4913beb02afd65
author : David Steele <david@pgbackrest.org>
date : Mon, 16 Dec 2024 10:41:06 -0500
committer: David Steele <david@pgbackrest.org>
date : Mon, 16 Dec 2024 10:41:06 -0500
Click here for diff
Bug Fixes:
* Fix issue with version/help commands attempting to load pgbackrest.conf. (Reviewed by Stefan Fercot. Reported by Bradford Boyle, Julian.)
Test Suite Improvements:
* Stabilize async archiving in integration tests. (Contributed by Viktor Kurilko. Reviewed by David Steele.)
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/release/2024/2.54.1.xml
M meson.build
M src/build/configure.ac
M src/configure
M src/version.h
M test/code-count/file-type.yaml
Stamp 12.22.
commit : 498f30a8b7025a2a7bd3715acc1d1692122ba542
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:41:03 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:41:03 -0500
Click here for diff
M configure
M configure.in
M src/include/pg_config.h.win32
M src/interfaces/libpq/libpq.rc.in
M src/port/win32ver.rc
Release notes for 17.2, 16.6, 15.10, 14.15, 13.18, 12.22.
commit : c4b39f26dc881d6496561f87c43a04c6dc1ba12f
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Sat, 16 Nov 2024 17:10:08 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Sat, 16 Nov 2024 17:10:08 -0500
Click here for diff
Stamp 13.18.
commit : 4f8df7a3fb750007ff5018f8125e0d4793cab337
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:39:24 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:39:24 -0500
Click here for diff
M configure
M configure.in
Fix recently-exposed portability issue in regex optimization.
commit : adb6dbc7f5353afbd0f7ac07e6cc41a54ea2818a
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Sun, 17 Nov 2024 14:14:06 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Sun, 17 Nov 2024 14:14:06 -0500
Click here for diff
Stamp 14.15.
commit : 4f5b14879d8271a73786105bf8aafda347dd7aea
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:37:40 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:37:40 -0500
Click here for diff
M configure
M configure.ac
Fix recently-exposed portability issue in regex optimization.
commit : df1a2633b11a3d3738eb614f17a0ea5bae719950
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Sun, 17 Nov 2024 14:14:06 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Sun, 17 Nov 2024 14:14:06 -0500
Click here for diff
Stamp 15.10.
commit : a4bd20b6d7f9d42750b797c450592f55d5374c1f
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:35:15 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:35:15 -0500
Click here for diff
M configure
M configure.ac
Fix recently-exposed portability issue in regex optimization.
commit : 6ab39c02747c33173e5e33291e66cebbdbc75d82
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Sun, 17 Nov 2024 14:14:06 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Sun, 17 Nov 2024 14:14:06 -0500
Click here for diff
Stamp 16.6.
commit : 1f47e7b59b92c58eee6840325d1aaa6acee84194
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:33:54 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:33:54 -0500
Click here for diff
M configure
M configure.ac
M meson.build
Release notes for 17.2, 16.6, 15.10, 14.15, 13.18, 12.22.
commit : 7a0ecaa497d85b0445d2f06abf670ec329b59a5c
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Sat, 16 Nov 2024 17:09:53 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Sat, 16 Nov 2024 17:09:53 -0500
Click here for diff
Stamp 17.2.
commit : 6304632eaa2107bb1763d29e213ff166ff6104c0
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:32:12 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 18 Nov 2024 15:32:12 -0500
Click here for diff
M configure
M configure.ac
M meson.build
Release notes for 17.2, 16.6, 15.10, 14.15, 13.18, 12.22.
commit : 9ac1003320fd34f7f3f89443213b714d42cc9c8e
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Sat, 16 Nov 2024 17:09:53 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Sat, 16 Nov 2024 17:09:53 -0500
Click here for diff
Stamp 12.21.
commit : 20a82026828536331ebe912b86f060078a173633
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:50:23 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:50:23 -0500
Click here for diff
M configure
M configure.in
M src/include/pg_config.h.win32
M src/interfaces/libpq/libpq.rc.in
M src/port/win32ver.rc
Last-minute updates for release notes.
commit : aee114bf1c84368db9e50ba4e7340ce632f89e19
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
Click here for diff
Stamp 13.17.
commit : 64ecc00908b7557afa911c15bb342ff06845bb19
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:48:40 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:48:40 -0500
Click here for diff
M configure
M configure.in
Last-minute updates for release notes.
commit : b3db5fdb05b6ca499f75d0ecf290dbd057bfb075
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
Click here for diff
Stamp 14.14.
commit : 8abd1324049759c1cbd81a4793c470a4f43e1fdb
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:47:15 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:47:15 -0500
Click here for diff
M configure
M configure.ac
Last-minute updates for release notes.
commit : 575d673fe78f76e396ea7eb8160c30d96ccfea0f
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
Click here for diff
Stamp 15.9.
commit : 0c53d54c812cea0d840490fd107910ed949e18c2
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:45:41 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:45:41 -0500
Click here for diff
M configure
M configure.ac
Last-minute updates for release notes.
commit : b83b358b1bac61ca46af995a3da83cc515a434c6
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
Click here for diff
Stamp 16.5.
commit : 8c9d34cdc4d213a57fa8b8a7197f7d6f22fca4c9
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:44:10 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:44:10 -0500
Click here for diff
M configure
M configure.ac
M meson.build
Last-minute updates for release notes.
commit : 03dc78ff644ca0c090cb4cdbf8fba64230e54238
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
Click here for diff
Stamp 17.1.
commit : 91f20bc2f7e4fcf5de5c65a6cb1190e0afa91c0b
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:42:37 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:42:37 -0500
Click here for diff
M configure
M configure.ac
M meson.build
Last-minute updates for release notes.
commit : 052aa02971f2dd476c14689033727a0b8563d5d2
author : Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
committer: Tom Lane <tgl@sss.pgh.pa.us>
date : Mon, 11 Nov 2024 17:40:13 -0500
Click here for diff