Hi Daniel, On Thu, Apr 30, 2026 at 8:20 AM Daniel Gustafsson <[email protected]> wrote:
> > On 29 Apr 2026, at 15:42, Ayush Tiwari <[email protected]> > wrote: > > > The patchset looks good. > > Thanks for review, I've applied the patchset after some editorializing. > While further testing this feature, I realized that ProcessSingleRelationFork() unconditionally called log_newpage_buffer() for every page of every relation during pg_enable_data_checksums(). This included unlogged relations, which by definition never generate WAL for data changes and are reset to their init fork on any recovery. Guard the log_newpage_buffer() call with RelationNeedsWAL() so that unlogged relations still get their pages dirtied (ensuring the checksum is flushed to disk at the next checkpoint) but do not emit WAL. Attached a patch to address this and added a test for the same. My current test checks if standby has main fork, I could just checked WAL to verify this using pg_waldump. Any other test ideas are welcome. Thanks, Satya
0001-Skip-WAL-for-unlogged-relations-during-online-checks.patch
Description: Binary data
