Re: Online enabling of checksums
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Magnus Hagander <magnus@hagander.net>
Cc: PostgreSQL Developers <pgsql-hackers@lists.postgresql.org>, Peter Eisentraut <peter.eisentraut@2ndquadrant.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>, Daniel Gustafsson <daniel@yesql.se>
Date: 2018-02-22T20:23:01Z
Lists: pgsql-hackers
Hi, On 2018-02-22 21:16:02 +0100, Magnus Hagander wrote: > You could do that, but then you've moving the complexity to managing that > list in shared memory instead. Maybe I'm missing something, but how are you going to get quick parallel processing if you don't have a shmem piece? You can't assign one database per worker because commonly there's only one database. You don't want to start/stop a worker for each relation because that'd be extremely slow for databases with a lot of tables. Without shmem you can't pass more than an oid to a bgworker. To me the combination of these things imply that you need some other synchronization mechanism *anyway*. > I'm not sure that's any easier... And > certainly adding a catalog flag for a usecase like this one is not making > it easier. Hm, I imagined you'd need that anyway. Imagine a 10TB database that's online converted to checksums. I assume you'd not want to reread 9TB if you crash after processing most of the cluster already? Regards, Andres Freund
Commits
-
Online enabling and disabling of data checksums
- f19c0eccae96 19 (unreleased) landed
-
Deactive flapping checksum isolation tests.
- bf75fe47e444 11.0 landed
-
Add support for coordinating record typmods among parallel workers.
- cc5f81366c36 11.0 cited