Re: Restrict data checksums entries in pg_stat_io - Mailing list pgsql-hackers

From Fujii Masao
Subject Re: Restrict data checksums entries in pg_stat_io
Date
Msg-id CAHGQGwEJ4vySkqCPezRBN-xvG29=WYAj=9xEdFAq6JWcQGdYbA@mail.gmail.com
Whole thread
In response to Re: Restrict data checksums entries in pg_stat_io  (Daniel Gustafsson <daniel@yesql.se>)
Responses Re: Restrict data checksums entries in pg_stat_io
List pgsql-hackers
On Mon, Jul 13, 2026 at 6:47 PM Daniel Gustafsson <daniel@yesql.se> wrote:
>
> > On 10 Jul 2026, at 05:13, Fujii Masao <masao.fujii@gmail.com> wrote:
>
> (Sorry for the delayed review)
>
> > The attached patch teaches pgstat_tracks_io_object() and pgstat_tracks_io_op()
> > about the actual I/O paths used by these processes. After the patch,
> > pg_stat_io includes only:
>
> Patch LGTM, and your reasoning around the IO usage of the launcher/worker is
> correct.  Thanks!

Thanks for the review!

While reviewing the patch again, I've started thinking that relation/bulkread
should not be removed for the data checksums processes.

Both the launcher and the worker use table_beginscan_catalog(), which
can select BAS_BULKREAD when scanning large catalogs, i.e., pg_database
for the launcher and pg_class for the worker. As a result, seems their
I/O can be reported under the bulkread context.

So I've updated the patch to keep relation/bulkread for both data checksums
processes. Patch attached.

Regards,

--
Fujii Masao

Attachment

pgsql-hackers by date:

Previous
From: surya poondla
Date:
Subject: Re: Fix races conditions in DropRole() and GrantRole()
Next
From: Zsolt Parragi
Date:
Subject: TDE: Benchmarking WAL encryption approaches