Re: aio: Async fsyncs for crash recovery and checkpointer

From: Nazir Bilal Yavuz <byavuz81(at)gmail(dot)com>
To: Yuhang Qiu <iamqyh(at)gmail(dot)com>
Cc: Nitin Jadhav <nitinjadhavpostgres(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Andres Freund <andres(at)anarazel(dot)de>
Subject: Re: aio: Async fsyncs for crash recovery and checkpointer
Date: 2026-09-30 08:42:11
Message-ID: CAN55FZ2NT6529QhB_dcrZ5LaSL20aayhP33ZisZVFSg2hOqLXg@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

On Tue, 22 Sept 2026 at 07:03, Yuhang Qiu <iamqyh(at)gmail(dot)com> wrote:
>
> Thanks for the comparison. The main benefit of this patch series seems
> to be in checkpointing rather than crash recovery, so I think further
> testing should focus on that.

I agree. Crash recovery is useful but checkpoint's impact is much
greater than that IMO.

> > However, I think increasing the number of worker processes
> > should solve this problem.
>
> Increasing the worker count may help with worker availability, but it
> doesn't address contention for storage bandwidth.

Could you please elaborate more on this?

> One more point: when a worker calls pg_fsync() or pg_fdatasync(), it checks
> its own enableFsync. If the issuer has reloaded fsync=on but the worker
> still has the old off value, the worker can skip the sync and report
> success. Should the issuer's setting or the worker's determine whether
> the sync is performed?

Nice find. I think it makes sense to use the issuing process's
enableFsync. Done like that in v3-0002.

--
Regards,
Nazir Bilal Yavuz
Microsoft

Attachment Content-Type Size
v3-0001-ci-Temporarily-enable-fsync-everywhere.patch text/x-patch 2.1 KB
v3-0002-aio-Add-fsync-support.patch text/x-patch 12.3 KB
v3-0003-aio-worker-Bound-SMGR-cache-growth.patch text/x-patch 4.0 KB
v3-0004-aio-Issue-SyncDataDirectory-fsyncs-through-AIO.patch text/x-patch 18.9 KB
v3-0005-aio-Allow-AIO-reopen-callbacks-to-return-errors.patch text/x-patch 9.2 KB
v3-0006-aio-Issue-checkpointer-fsyncs-asynchronously.patch text/x-patch 59.5 KB
v3-0007-aio-Allow-IO-workers-to-execute-SLRU-fsyncs.patch text/x-patch 17.7 KB
v3-0008-aio-doc-Document-AIO-fsync.patch text/x-patch 3.6 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Nazir Bilal Yavuz 2026-09-30 08:43:42 Re: aio: Async fsyncs for crash recovery and checkpointer
Previous Message 2026-09-30 08:38:58 WG: AW: Extract text from XML, pay attention to XML Entities