Re: WIP patch: Improve relation size functions such as pg_relation_size() to avoid producing an error when called against a no longer visible relation

From: Phil Sorber <phil(at)omniti(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers(at)postgresql(dot)org, OmniTI DBA <dba(at)omniti(dot)com>
Subject: Re: WIP patch: Improve relation size functions such as pg_relation_size() to avoid producing an error when called against a no longer visible relation
Date: 2011-12-23 00:01:21
Message-ID: CADAkt-gwO3YLu08SBzNeDBjAJcZUY_scCb7wXuRVuuQkRT_g1w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Dec 22, 2011 at 3:19 PM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Thu, Dec 22, 2011 at 2:02 PM, Phil Sorber <phil(at)omniti(dot)com> wrote:
>> On Thu, Dec 22, 2011 at 1:33 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>>> Robert Haas <robertmhaas(at)gmail(dot)com> writes:
>>>> I'm wondering if we oughta just return NULL and be done with it.
>>>
>>> +1.  There are multiple precedents for that sort of response, which we
>>> introduced exactly so that "SELECT some_function(oid) FROM some_catalog"
>>> wouldn't fail just because one of the rows had gotten deleted by the
>>> time the scan got to it.  I don't think it's necessary for the
>>> relation-size functions to be any smarter.  Indeed, I'd assumed that's
>>> all that Phil's patch did, since I'd not looked closer till just now.
>>
>> Here it is without the checking for recently dead. If it can't open
>> the relation it simply returns NULL.
>
> I think we probably ought to make pg_database_size() and
> pg_tablespace_size() behave similarly.
>
> --
> Robert Haas
> EnterpriseDB: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company

Changes added.

Attachment Content-Type Size
improve_relation_size_functions_v4.patch text/x-patch 7.7 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tomas Vondra 2011-12-23 00:37:43 WIP: explain analyze with 'rows' but not timing
Previous Message Andrew Dunstan 2011-12-22 23:14:46 Re: reprise: pretty print viewdefs