postgresql/contrib/dbsize
Tom Lane 7a57a67278 Replace opendir/closedir calls throughout the backend with AllocateDir
and FreeDir routines modeled on the existing AllocateFile/FreeFile.
Like the latter, these routines will avoid failing on EMFILE/ENFILE
conditions whenever possible, and will prevent leakage of directory
descriptors if an elog() occurs while one is open.
Also, reduce PANIC to ERROR in MoveOfflineLogs() --- this is not
critical code and there is no reason to force a DB restart on failure.
All per recent trouble report from Olivier Hubaut.
2004-02-23 23:03:10 +00:00
..
dbsize.c Replace opendir/closedir calls throughout the backend with AllocateDir 2004-02-23 23:03:10 +00:00
dbsize.sql.in Fix contrib/dbsize for schema-qualified table names. 2002-04-02 01:17:28 +00:00
Makefile I've written on like that a while ago: 2002-02-22 23:05:35 +00:00
README.dbsize Update dbsize documentation with: 2002-06-23 20:09:23 +00:00

This module contains two functions that report the size of a given
database or relation.  E.g.,

SELECT database_size('template1');
SELECT relation_size('pg_class');

These functions report the actual file system space.  Thus, users can
avoid digging through the details of the database directories.

Copy this directory to contrib/dbsize in your PostgreSQL source tree.
Then just run make; make install.  Finally, load the functions into any
database using dbsize.sql.

When computing the size of a table, it does not include TOAST or index
disk space.