Re: pgstattuple: Use streaming read API in pgstatindex functions

From: Shinya Kato <shinya11(dot)kato(at)gmail(dot)com>
To: Xuneng Zhou <xunengzhou(at)gmail(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Nazir Bilal Yavuz <byavuz81(at)gmail(dot)com>, Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, wenhui qiu <qiuwenhuifx(at)gmail(dot)com>
Subject: Re: pgstattuple: Use streaming read API in pgstatindex functions
Date: 2025-10-16 08:20:27
Message-ID: CAOzEurTcFR3Vvz5Z0wFkFqrVRzZG=U4rNuQDVytL2CO1RCAR6Q@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

On Wed, Oct 15, 2025 at 10:25 AM Xuneng Zhou <xunengzhou(at)gmail(dot)com> wrote:

> Hi,
>
> Here’s the updated summary report(cold cache, fragmented index), now
> including results for the streaming I/O + io_uring configuration.
>
> [image: image.png]
>

Thank you for the additional tests. I can see the image on Gmail, but I
cannot on pgsql-hackers archive [0], so it might be a good idea to attach
it and not to paste it on the body.

I saw the patch and have a few minor comments.

+ p.current_blocknum = 1;

To improve readability, how about using the following, which is consistent
with nbtree.c [1]?
p.current_blocknum = BTREE_METAPAGE + 1;

Similarly, for hash index:
p.current_blocknum = HASH_METAPAGE + 1;

+ /* Unlock and release buffer */
UnlockReleaseBuffer(buf);

I think this comment is redundant since the function name
UnlockReleaseBuffer is self-explanatory. I suggest omitting it from
pgstathashindex and removing the existing one from pgstatindex_impl.

[0]
https://www.postgresql.org/message-id/CABPTF7XyEW_3or2yFxBcHhVWAph5NnThLN%3DqS9cNecM1Uy_K%2Bw%40mail.gmail.com
[1]
https://github.com/postgres/postgres/blob/41c674d2e31e8304a6edbcb5183d326798ba00f6/src/backend/access/nbtree/nbtree.c#L1261

--
Best regards,
Shinya Kato
NTT OSS Center

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bertrand Drouvot 2025-10-16 08:23:37 Re: Question about InvalidatePossiblyObsoleteSlot()
Previous Message Akshay Joshi 2025-10-16 08:17:53 Re: [PATCH] Add pg_get_policy_ddl() function to reconstruct CREATE POLICY statement