| From: | Melanie Plageman <melanieplageman(at)gmail(dot)com> |
|---|---|
| To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
| Subject: | pgsql: Allow IO time to be counted without a matching IO operation in p |
| Date: | 2026-07-31 21:47:18 |
| Message-ID: | E1wpv4Y-000000019EP-0LKb@gemulon.postgresql.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-committers |
Allow IO time to be counted without a matching IO operation in pg_stat_io
Since 999dec9ec6a816680, pg_stat_io can show read time with zero reads
for an IO Context: a foreign IO is counted as a read only in the
initiating backend, while other waiters record only the wait time. That
violates pgstat_bktype_io_stats_valid(). Relax the check to allow time
without a matching operation count, since we want to count read wait
time even in backends that did not initiate the read. This also enables
future accounting of waits on IO resources (e.g., AIO handles) in
backends that didn't start the IO.
Author: Andrey Rachitskiy <pl0h0yp1(at)gmail(dot)com>
Reported-by: Justin Pryzby <pryzby(at)telsasoft(dot)com>
Reviewed-by: Melanie Plageman <melanieplageman(at)gmail(dot)com>
Reviewed-by: Andrey Borodin <x4mmm(at)yandex-team(dot)ru>
Discussion: https://postgr.es/m/ak5lccE4qiQpOBHn@pryzbyj2023
Backpatch-through: 19
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/c9a669492719db2fe45cd17259ae0fc3bc4d91c5
Modified Files
--------------
doc/src/sgml/monitoring.sgml | 4 +++-
src/backend/storage/buffer/bufmgr.c | 8 ++++----
src/backend/utils/activity/pgstat_io.c | 22 +++++++---------------
3 files changed, 14 insertions(+), 20 deletions(-)
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Melanie Plageman | 2026-07-31 21:48:49 | pgsql: Allow IO time to be counted without a matching IO operation in p |
| Previous Message | Nathan Bossart | 2026-07-31 19:01:25 | pgsql: Add list of major features to the v19 release notes. |