Re: Postgre and AIO

From: Xuneng Zhou <xunengzhou(at)gmail(dot)com>
To: "Weck, Luis" <luis(dot)weck(at)pismo(dot)io>
Cc: "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: Re: Postgre and AIO
Date: 2025-09-29 12:25:46
Message-ID: CABPTF7U2XgofHH1sPBw46tfnWWGua22NOZA98o2o2PaYEXfStw@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi,

On Mon, Sep 29, 2025 at 8:07 PM Weck, Luis <luis(dot)weck(at)pismo(dot)io> wrote:
>
> This is more of a question of capability and to make me understand how exactly AIO work in Postgres.
>
> Now that AIO landed in v18, I was thinking of a use case which has annoyed me sometimes, which is inserting lots of data into a table with many indices. What I am specifically “complaining” is that index updating happens one at a time. Would it be possible/make sense to use AIO to do this?
>
> Another thing that happens often is that an index lookup for something like SELECT y FROM tbl WHERE x IN (1,2,…N) where N is a big number such as 1000 or 2000, takes a while, because (at least for versions < 18) it took a long time sequentially reading the index for each value. I ended up having to split the values into smaller chunks and ran multiple queries in parallel to maintain a lower latency overall.
>
> Anyway, does any of this make sense? Could Postgres extend the use of AIO to such cases?

To my knowledge, AIO for index scan is still in-progress and expected
to land in v19/20 or later?

[1] https://wiki.postgresql.org/wiki/AIO (not stay-up-to date)
[2] https://talkingpostgres.com/episodes/what-went-wrong-what-went-right-with-aio-with-andres-freund

Best,
Xuneng

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Dominique Devienne 2025-09-29 12:26:27 Re: Postgre and AIO
Previous Message Weck, Luis 2025-09-29 12:07:09 Postgre and AIO