Re: Enable data checksums by default

Peter Eisentraut <peter@eisentraut.org>

From: Peter Eisentraut <peter@eisentraut.org>
To: Nathan Bossart <nathandbossart@gmail.com>
Cc: Greg Sabino Mullane <htamfids@gmail.com>, Bruce Momjian <bruce@momjian.us>, Michael Paquier <michael@paquier.xyz>, Michael Banck <mbanck@gmx.net>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2024-10-16T06:54:54Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Avoid BufferGetLSNAtomic() calls during nbtree scans.

  2. doc PG 18 relnotes: Add incompatibility note about checksums now default

  3. Fix pg_upgrade's cross-version tests when old < 18

  4. initdb: Change default to using data checksums.

  5. Allow TAP tests to force checksums off when calling init()

  6. initdb: Add new option "--no-data-checksums"

  7. Tweak docs to reduce possible impact of data checksums

On 14.10.24 11:28, Peter Eisentraut wrote:
> On 03.10.24 23:13, Nathan Bossart wrote:
>> On Tue, Oct 01, 2024 at 11:15:02AM -0400, Peter Eisentraut wrote:
>>> I have committed 0001 (the new option) and 0004 (the docs tweak).  I 
>>> think
>>> there is consensus for the rest, too, but I'll leave it for a few 
>>> more days
>>> to think about.  I guess the test failure has to be addressed.
>>
>> Here is a rebased patch with the test fix (for cfbot).  I have made no
>> other changes.
> 
> I have committed the test changes (patch 0002).  (I renamed the option 
> to no_data_checksums to keep the wording consistent with the initdb 
> option.)
> 
> Right now, with checksums off by default, this doesn't do much, but you 
> can test this like
> 
>      PG_TEST_INITDB_EXTRA_OPTS=--data-checksums meson test ...
> 
> and everything will pass.  To make that work, I had to adjust the order 
> of how the initdb options are assembled in Cluster.pm a bit.
> 
> I will work on the patch that flips the default next.

The patch that flips the default has been committed.

I also started a PG18 open items page and made a note that we follow up 
on the upgrade experience, as was discussed in this thread.

https://wiki.postgresql.org/wiki/PostgreSQL_18_Open_Items