Re: Changing the state of data checksums in a running cluster

Tomas Vondra <tomas@vondra.me>

From: Tomas Vondra <tomas@vondra.me>
To: Michael Paquier <michael@paquier.xyz>
Cc: Daniel Gustafsson <daniel@yesql.se>, Michael Banck <mbanck@gmx.net>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-03-10T11:17:58Z
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. Use correct datatype for PID

  2. Improve comments in online checksums code

  3. Fix checksum state transition during promotion

  4. Fix regex searching for page verification failures in tests

  5. Apply data-checksum worker throttling parameters

  6. Skip WAL for unlogged main fork during online checksum enable

  7. Revert "Get rid of WALBufMappingLock"

  8. Get rid of WALBufMappingLock

  9. Improve grammar of options for command arrays in TAP tests

Attachments

On 3/10/25 10:46, Tomas Vondra wrote:
> On 3/10/25 01:18, Tomas Vondra wrote:
>>
>> ...
>>
>> There's still a failure on windows, though. I'd bet that's due to the
>> data_checksum/LocalDatachecksumVersion sync not working correctly on
>> builds with EXEC_BACKEND, or something like that, but it's too late so
>> I'll take a closer look tomorrow.
>>
> 
> Just like I suspected, there was a bug in EXEC_BACKEND, although a bit
> different from what I guessed - the worker state in shmem was zeroed
> every time, not just once. And a second issue was child_process_kinds
> got out of sync with BackendType (mea culpa).
> 
> For me, this passes all CI tests, hopefully cfbot will be happy too.
> 

A bit embarrassing, I did not notice updating child_process_kinds breaks
the stats regression test, so here's a version fixing that.


regards

-- 
Tomas Vondra