Re: replay of CREATE TABLESPACE eats data at wal_level=minimal - Mailing list pgsql-hackers

From Noah Misch
Subject Re: replay of CREATE TABLESPACE eats data at wal_level=minimal
Date
Msg-id 20210822225944.GA1817965@rfd.leadboat.com
Whole thread Raw
In response to Re: replay of CREATE TABLESPACE eats data at wal_level=minimal  (Noah Misch <noah@leadboat.com>)
Responses Re: replay of CREATE TABLESPACE eats data at wal_level=minimal  (Prabhat Sahu <prabhat.sahu@enterprisedb.com>)
Re: replay of CREATE TABLESPACE eats data at wal_level=minimal  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-hackers
On Wed, Aug 18, 2021 at 10:32:10PM -0700, Noah Misch wrote:
> On Wed, Aug 18, 2021 at 10:47:24AM -0400, Robert Haas wrote:
> > On Tue, Aug 10, 2021 at 9:35 AM Robert Haas <robertmhaas@gmail.com> wrote:
> > > Oh, yeah, I think that works, actually. I was imagining a few problems
> > > here, but I don't think they really exist. The redo routines for files
> > > within the directory can't possibly care about having the old files
> > > erased for them, since that wouldn't be something that would normally
> > > happen, if there were no recent CREATE TABLESPACE involved. And
> > > there's code further down to remove and recreate the symlink, just in
> > > case. So I think your proposed patch might be all we need.
> > 
> > Noah, do you plan to commit this?
> 
> Yes.  I feel it needs a test case, which is the main reason I've queued the
> task rather than just pushed what I posted last.

Here's what I plan to push.  Besides adding a test, I modified things so
CREATE TABLESPACE redo continues to report an error if a non-directory exists
under the name we seek to create.  One could argue against covering that
corner case, but TablespaceCreateDbspace() does cover it.

Attachment

pgsql-hackers by date:

Previous
From: Pavel Stehule
Date:
Subject: Re: proposal: enhancing plpgsql debug API - returns text value of variable content
Next
From: Mark Dilger
Date:
Subject: Improved regular expression error message for backrefs