Re: Convenient dump of table and object size in PG 7.4

From: Alvaro Herrera <alvherre(at)surnet(dot)cl>
To: Steve Lane <slane(at)soliantconsulting(dot)com>
Cc: pgsql-admin(at)postgresql(dot)org
Subject: Re: Convenient dump of table and object size in PG 7.4
Date: 2005-05-27 02:48:12
Message-ID: 20050527024812.GB18417@surnet.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

On Thu, May 26, 2005 at 09:39:26PM -0500, Steve Lane wrote:

> Attached is a view I wrote for postgres 7.4 that seems to provide pretty
> accurate reporting of table sizes. For each non-system table in a database
> it shows base table size, size of any related TOAST data, and aggregate size
> of indexes.
>
> The code is somewhat ugly in that it contains a bunch of CASE statements the
> sole point of which is to transform the occasional NULL into a 0.
>
> Object sizes are computed from pg_class.relpages with an assumed page size
> of 8192.
>
> Comments and improvements most welcome.

You could change all those "CASE WHEN foo IS NULL THEN 0 ELSE foo" into
COALESCE(foo, 0).

Additionally, "show block_size" will give you the block (page) size. I
don't see how would you use that in a query though.

--
Alvaro Herrera (<alvherre[a]surnet.cl>)
"La tristeza es un muro entre dos jardines" (Khalil Gibran)

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Tom Lane 2005-05-27 03:17:20 Re: Convenient dump of table and object size in PG 7.4
Previous Message Steve Lane 2005-05-27 02:39:26 Convenient dump of table and object size in PG 7.4