agora inbox for pgsql-committers@postgresql.org  
help / color / mirror / Atom feed
From: Melanie Plageman <melanieplageman@gmail.com>
To: pgsql-committers@lists.postgresql.org
Subject: pgsql: Allow IO time to be counted without a matching IO operation in p
Date: Fri, 31 Jul 2026 21:47:18 +0000
Message-ID: <E1wpv4Y-000000019EP-0LKb@gemulon.postgresql.org> (raw)

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@gmail.com>
Reported-by: Justin Pryzby <pryzby@telsasoft.com>
Reviewed-by: Melanie Plageman <melanieplageman@gmail.com>
Reviewed-by: Andrey Borodin <x4mmm@yandex-team.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(-)



view thread (2+ messages)  latest in thread

Message-ID: <E1wpv4Y-000000019EP-0LKb@gemulon.postgresql.org>
Permalink:  ../E1wpv4Y-000000019EP-0LKb@gemulon.postgresql.org/
Also on:    postgresql.org/message-id/E1wpv4Y-000000019EP-0LKb@gemulon.postgresql.org

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-committers@postgresql.org
  Cc: melanieplageman@gmail.com, pgsql-committers@lists.postgresql.org
  Subject: Re: pgsql: Allow IO time to be counted without a matching IO operation in p
  In-Reply-To: <E1wpv4Y-000000019EP-0LKb@gemulon.postgresql.org>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox