Re: Checkpointer write combining

From: Melanie Plageman <melanieplageman(at)gmail(dot)com>
To: Soumya S Murali <soumyamurali(dot)work(at)gmail(dot)com>
Cc: "li(dot)evan(dot)chao(at)gmail(dot)com" <li(dot)evan(dot)chao(at)gmail(dot)com>, "byavuz81(at)gmail(dot)com" <byavuz81(at)gmail(dot)com>, "andres(at)anarazel(dot)de" <andres(at)anarazel(dot)de>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Checkpointer write combining
Date: 2025-12-15 21:48:40
Message-ID: CAAKRu_bxSQ88p8CJfDtfFOeyRch8oCfein0yaim-2vUpBYhs-g@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Dec 15, 2025 at 4:36 AM Soumya S Murali
<soumyamurali(dot)work(at)gmail(dot)com> wrote:
>
> With reference to the last patches (v11) I received [1] and while reviewing Melanie’s latest feedback, I understood that PageSetBatchChecksumInplace() is currently WIP and depends on upcoming changes to hint-bit locking. It will be contrary to the flow if I propose new functional changes to checksum batching at this time. So for now I will focus on preparatory or documentation improvements until I get the updates on dependencies.
> Regarding my patch attached, the patch introduces write-combining during checkpoints by batching contiguous buffers and allowing them to be written using vectorized I/O. My patch includes write-combining for checkpoint buffer flushes, contiguous buffer batching, Preserved WAL ordering, locking, and buffer state invariants. The change is currently limited to the checkpointer path (BufferSync()). So far I tested my implementation and found that all the regression (233 tests) and isolation tests (121 tests) got passed, the manual pgbench validation completed successfully and also verified pg_stat_bgwriter counters before and after checkpoints. So far the implementation is stable in my system.

Can you explain how your implementation differs from what was posted
in v11 0006 [1]? That implements checkpointer write combining. I'm
open to ideas for improving the code, but I don't understand how your
patch is supposed to fit into the ongoing work on this thread.

- Melanie

[1] https://www.postgresql.org/message-id/CAAKRu_ZiEpE_EHww3S3-E3iznybdnX8mXSO7Wsuru7%3DP9Y%3DczQ%40mail.gmail.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jelte Fennema-Nio 2025-12-15 21:50:04 Re: Periodic authorization expiration checks using GoAway message
Previous Message Greg Burd 2025-12-15 21:46:11 Re: Expanding HOT updates for expression and partial indexes