From: | Andrew Dunstan <andrew(at)dunslane(dot)net> |
---|---|
To: | Magnus Hagander <magnus(at)hagander(dot)net> |
Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Subject: | Re: Tablespaces in the data directory |
Date: | 2012-12-03 18:14:30 |
Message-ID: | 50BCEC06.8060501@dunslane.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 12/03/2012 12:33 PM, Magnus Hagander wrote:
>
>
> On Dec 3, 2012 2:55 AM, "Andrew Dunstan" <andrew(at)dunslane(dot)net
> <mailto:andrew(at)dunslane(dot)net>> wrote:
> >
> >
> > On 12/02/2012 07:50 PM, Magnus Hagander wrote:
> >>
> >> On Sat, Dec 1, 2012 at 6:56 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us
> <mailto:tgl(at)sss(dot)pgh(dot)pa(dot)us>> wrote:
> >>>
> >>> Magnus Hagander <magnus(at)hagander(dot)net <mailto:magnus(at)hagander(dot)net>>
> writes:
> >>>>
> >>>> Someone just reported a problem when they had created a new
> tablespace
> >>>> inside the old data directory. I'm sure there can be other issues
> >>>> caused by this as well, but this is mainly a confusing scenario for
> >>>> people now.
> >>>> As there isn't (as far as I know at least) any actual *point* in
> >>>> creating a tablespace inside the main data directory, should we
> >>>> perhaps disallow this in CREATE TABLESPACE? Or at least throw a
> >>>> WARNING if one does it?
> >>>
> >>> It could be pretty hard to detect that in general (think symlinks
> >>> and such). I guess if we're just trying to print a helpful warning,
> >>> we don't have to worry about extreme corner cases. But what exactly
> >>> do you have in mind --- complain about any relative path? Complain
> >>> about absolute paths that have a prefix matching the DataDir?
> >>
> >> Oh, I hadn't thought quite so far as the implementation :) Was looking
> >> to see if there were going to be some major objections before I even
> >> started thinking about that.
> >>
> >> But for the implementation, I'd say any absolute path that have a
> >> prefix matching DataDir. Tablespaces cannot be created using relative
> >> paths, so we don't have to deal with that.
> >>
> >
> > I have been known to symlink a tablespace on a replica back to a
> directory in the datadir, while on the primary it points elsewhere.
> What exactly is the problem?
>
> That wouldn't be affected by this though, since it would only warn at
> create tablespace.
>
> I'd still consider it a bad idea in general to do that, since you're
> basically messing with the internal structure of the data directory.
> Why not just link it to some place outside the data directory?
>
> One obvious problem with it atm is that pg_basebackup breaks, in that
> it backs up your data twice, and throws warnings about things that
> aren't links if you actually out it inside pg_tblspc.
>
>
Well, when I last did it I don't think there was such a thing as
pg_basebackup :-)
I think it would be reasonable for it to complain if it came across a
PG_VERSION file in an unexpected location.
cheers
andrew
From | Date | Subject | |
---|---|---|---|
Next Message | Pavan Deolasee | 2012-12-03 18:14:36 | visibilitymap_count() at the end of vacuum |
Previous Message | Dimitri Fontaine | 2012-12-03 18:05:49 | Re: Review: create extension default_full_version |