On Thursday 02 October 2008 08:37:59 Tom Lane wrote: > Heikki Linnakangas <[EMAIL PROTECTED]> 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 -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers