Re: Enable data checksums by default
Greg Sabino Mullane <htamfids@gmail.com>
From: Greg Sabino Mullane <htamfids@gmail.com>
To: Michael Banck <mbanck@gmx.net>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2024-08-07T14:17:30Z
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 →
-
Avoid BufferGetLSNAtomic() calls during nbtree scans.
- e6eed40e4441 18.0 cited
-
doc PG 18 relnotes: Add incompatibility note about checksums now default
- 48814415d5aa 18.0 landed
-
Fix pg_upgrade's cross-version tests when old < 18
- 38c18710b37a 18.0 landed
-
initdb: Change default to using data checksums.
- 04bec894a04c 18.0 landed
-
Allow TAP tests to force checksums off when calling init()
- e7d0cf42b1ac 18.0 landed
-
initdb: Add new option "--no-data-checksums"
- 983a588e0b86 18.0 landed
-
Tweak docs to reduce possible impact of data checksums
- efd72a3d422b 18.0 landed
On Wed, Aug 7, 2024 at 4:43 AM Michael Banck <mbanck@gmx.net> wrote:
> I think the last time we dicussed this the consensus was that
> computational overhead of computing the checksums is pretty small for
> most systems (so the above change seems warranted regardless of whether
> we switch the default), but turning on wal_compression also turns on
> wal_log_hints, which can increase WAL by quite a lot. Maybe this is
> covered elsewhere in the documentation (I just looked at the patch), but
> if not, it probably should be added here as a word of caution.
>
Yeah, that seems something beyond this patch? Certainly we should mention
wal_compression in the release notes if the default changes. I mean, I feel
wal_log_hints should probably default to on as well, but I've honestly
never really given it much thought because my fingers are trained to type
"initdb -k". I've been using data checksums for roughly a decade now. I
think the only time I've NOT used checksums was when I was doing checksum
overhead measurements, or hacking on the pg_checksums program.
> I think we usually do not mention when a feature was added/changed, do
> we? So I'd just write "(default: enabled)" or whatever is the style of
> the surrounding options.
>
+1
> > + {"no-data-checksums", no_argument, NULL, 20},
>
> Does it make sense to add -K (capital k) as a short-cut for this? I
> think this is how we distinguish on/off for pg_dump (-t/-T etc.) but
> maybe that is not wider project policy.
>
I'd rather not. Better to keep it explicit rather than some other weird
letter that has no mnemonic value.
Cheers,
Greg