Re: Online enabling of checksums

Magnus Hagander <magnus@hagander.net>

From: Magnus Hagander <magnus@hagander.net>
To: Andres Freund <andres@anarazel.de>
Cc: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>, Daniel Gustafsson <daniel@yesql.se>
Date: 2018-02-22T19:30:52Z
Lists: pgsql-hackers
On Thu, Feb 22, 2018 at 8:24 PM, Andres Freund <andres@anarazel.de> wrote:

> On 2018-02-22 08:22:48 -0500, Peter Eisentraut wrote:
> > On 2/21/18 15:53, Magnus Hagander wrote:
> > > *Two new functions are added, pg_enable_data_checksums() and
> > > pg_disable_data_checksums(). The disable one is easy -- it just changes
> > > to disable. The enable one will change the state to inprogress, and
> then
> > > start a background worker (the “checksumhelper launcher”). This worker
> > > in turn will start one sub-worker (“checksumhelper worker”) in each
> > > database (currently all done sequentially).*
> >
> > This is at least the fourth version of the pattern launcher plus worker
> > background workers.  I wonder whether we can do something to make this
> > easier and less repetitive.  Not in this patch, of course.
>
> I suspect I'm going to get some grief for this, but I think the time has
> come to bite the bullet and support changing databases in the same
> process...
>

Hey, I can't even see the goalposts anymore :P

Are you saying this should be done *in general*, or specifically for
background workers? I'm assuming you mean the general case? That would be
very useful, but is probably a fairly non-trivial task (TM).


-- 
 Magnus Hagander
 Me: https://www.hagander.net/ <http://www.hagander.net/>
 Work: https://www.redpill-linpro.com/ <http://www.redpill-linpro.com/>

Commits

  1. Online enabling and disabling of data checksums

  2. Deactive flapping checksum isolation tests.

  3. Add support for coordinating record typmods among parallel workers.