From: | Nathan Bossart <nathandbossart(at)gmail(dot)com> |
---|---|
To: | Michael Paquier <michael(at)paquier(dot)xyz> |
Cc: | Dilip Kumar <dilipbalaut(at)gmail(dot)com>, "Ryo Matsumura (Fujitsu)" <matsumura(dot)ryo(at)fujitsu(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: DDL result is lost by CREATE DATABASE with WAL_LOG strategy |
Date: | 2023-02-16 06:41:20 |
Message-ID: | 20230216064120.GA2016097@nathanxps13 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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 | Content-Type | Size |
---|---|---|
create_db_fix_v2.patch | text/x-diff | 1.8 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Michael Paquier | 2023-02-16 06:50:38 | Re: remove duplicate comment. |
Previous Message | Amit Kapila | 2023-02-16 06:32:16 | Re: Support logical replication of global object commands |