Re: FSM rewrite committed, loose ends - Mailing list pgsql-hackers

From Robert Treat
Subject Re: FSM rewrite committed, loose ends
Date
Msg-id 200810021132.17202.xzilla@users.sourceforge.net
Whole thread Raw
In response to Re: FSM rewrite committed, loose ends  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: FSM rewrite committed, loose ends
Re: FSM rewrite committed, loose ends
List pgsql-hackers
On Thursday 02 October 2008 08:37:59 Tom Lane wrote:
> Heikki Linnakangas <heikki.linnakangas@enterprisedb.com> writes:
> > Following that philosophy, I think the idea of adding a new optional
> > "fork name" argument to pg_relation_size() is the right thing to do:
> >
> > pg_relation_size('footable') for size of the main data fork
> > pg_relation_size('footable', 'fsm') for FSM size
>
> +1.  Note that the second form should also accept 'main' or some such
> for orthogonality.
>
> > There's currently two variants of both pg_relation_size and
> > pg_total_relation_size, one takes an OID and one takes a relation name
> > as argument. Any objections to having just one of each function, taking
> > a 'regclass'? The user-visible behavior wouldn't change, but I thought
> > I'd ask first in case I'm missing something.
>
> Um, it would only not change for someone typing
> pg_relation_size('literal').  Something like this:
>
>     select sum(pg_relation_size(relname)) from pg_class
>
> would fail for lack of an implicit cast from name to regclass.
> Now the above is pretty stupid --- it would be faster and more
> schema-safe to be passing pg_class.oid --- so maybe we don't care
> about breaking it.
>

I would be more concerned about people doing:

select pg_relation_size(tablename) from pg_tables; 

since pg_tables is presented as a more user-friendly option to something like 
pg_class this might be something more widely used, plus we don't have the 
easy way out of just telling them to use the oid instead like we do with 
pg_class. 

-- 
Robert Treat
Build A Brighter LAMP :: Linux Apache {middleware} PostgreSQL


pgsql-hackers by date:

Previous
From: "Gurjeet Singh"
Date:
Subject: Re: [GENERAL] Transactions within a function body
Next
From: Tom Lane
Date:
Subject: Re: Block-level CRC checks