Dave Page wrote: > > Dave Page wrote: > > > The attached patch is an update of the dbsize integration patch > > > discussed last week. This version includes the following functions: > > > > > > pg_relation_size(text) - Get relation size by name/schema.name > > > pg_relation_size(oid) - Get relation size by OID > > > pg_tablespace_size(name) - Get tablespace size by name > > > pg_tablespace_size(oid) - Get tablespace size by OID > > > pg_database_size(name) - Get database size by name > > > pg_database_size(oid) - Get database size by OID > > > pg_size_pretty(int8) - Pretty print (and round) the byte size > > > specified (eg, 123456 = 121KB) ... > > > > Uh, do any of these include the index size? TOAST size? > > No, only total_relation_size() does that.
And we are dropping total_relation_size() in this patch, right? I do like the new redesign --- it is very clear and consistent, and it is clear you are looking at relation/tablespace/database levels in the API. Can we rename pg_relation_size to be pg_object_size(), because it handles indexes and TOAST, and use pg_relation_size to return the total usage of relations, and error if called with a TOAST or index? I would like to give some way to report a total without having to query the system catalogs. > > > So should we include this new feature, and if so, how is it > > best added - > > > rewrite in C, or one long line in pg_proc? > > > > I would follow whatever we do in pg_proc now. > > There are a couple of SQL functions in there, but they are nowhere near > as long as this one. I'll look at implementing it in C. > > Regards, Dave. > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq