Re: DDL result is lost by CREATE DATABASE with WAL_LOG strategy - Mailing list pgsql-hackers

From Nathan Bossart
Subject Re: DDL result is lost by CREATE DATABASE with WAL_LOG strategy
Date
Msg-id 20230216064120.GA2016097@nathanxps13
Whole thread Raw
In response to Re: DDL result is lost by CREATE DATABASE with WAL_LOG strategy  (Michael Paquier <michael@paquier.xyz>)
Responses Re: DDL result is lost by CREATE DATABASE with WAL_LOG strategy
List pgsql-hackers
On Thu, Feb 16, 2023 at 02:26:55PM +0900, Michael Paquier wrote:
> So, if I am understanding this stuff right, this issue can create data
> corruption once a DDL updates any pages of pg_class stored in a
> template database that gets copied by this routine.  In this case, the
> patch sent makes sure that any page copied will get written once a
> checkpoint kicks in.  Shouldn't we have at least a regression test for
> such a scenario?  The issue can happen when updating a template
> database after creating a database from it, which is less worrying
> than the initial impression I got, still I'd like to think that we
> should have some coverage as of the special logic this code path
> relies on for pg_class when reading its buffers.

I was able to quickly hack together a TAP test that seems to reliably fail
before the fix and pass afterwards.  There's probably a better place for
it, though...

-- 
Nathan Bossart
Amazon Web Services: https://aws.amazon.com

Attachment

pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: Support logical replication of global object commands
Next
From: Michael Paquier
Date:
Subject: Re: remove duplicate comment.