Re: pg_tablespace_location() error message

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: pg_tablespace_location() error message
Date: 2012-04-11 01:19:05
Message-ID: 1822.1334107145@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Robert Haas <robertmhaas(at)gmail(dot)com> writes:
> On Tue, Apr 10, 2012 at 7:57 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> If we expect this function to mainly be applied to pg_class.reltablespace,
>> then it seems like it ought to understand that zero means "the database
>> default" and substitute the database's default tablespace. That might
>> or might not be the same as the cluster default.
>>
>> Alternatively, we could expect pg_upgrade to understand that and make
>> the substitution itself, but if the same would be needed by most uses of
>> the function, maybe we should just do it here.

> +1 for doing it in the function. I think that will improve
> ease-of-use and give up nothing.

I'm inclined to agree. It won't help pg_upgrade, but that's because
the query pg_upgrade is using is constrained by backwards-compatibility
considerations: it's *necessary* to join to pg_tablespace if you want
any location details pre-9.2. But as of 9.2 it's plausible to consider
applying this function directly to pg_class.reltablespace, so we should
make it behave sanely for that use-case.

I think it's probably about a two-line change, will research and
apply if so.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Greg Smith 2012-04-11 01:30:20 Re: Initial 9.2 pgbench write results
Previous Message Robert Haas 2012-04-11 01:18:41 Re: invalid search_path complaints