Re: Enable data checksums by default

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: Greg Sabino Mullane <htamfids@gmail.com>
Cc: Michael Banck <mbanck@gmx.net>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2024-08-08T00:59:15Z
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 Aug 7, 2024, at 23:18, Greg Sabino Mullane <htamfids@gmail.com> wrote:

  


  
    
      On Wed, Aug 7, 2024 at 4:43 AM Michael Banck <mbanck@gmx.net> wrote:.
    
    
      
        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.
      
    
  


  



  Not sure to see the point of a short option while the long option is able to do the job in a clear enough way. Using one character to define a positive or negative is confusing, harder to parse. That’s just my take.


  



  Switching the default to use checksums makes sense to me. Even if there will be always an argument about efficiency, every uses of Postgres I’ve seen in the last 10 years enable data checksums to mitigate Postgres as a source of corruption.


  



  The patch should be split in more pieces: one for the initdb option, a second for the tap test option switching some tests to use it where it matters and a third patch to change the default. This would limit the damage should the default be reverted as the new options are useful on their own.


  --
  
    Michael