mirror of
https://github.com/postgres/postgres.git
synced 2025-06-08 22:02:03 +03:00
tablespaces correctly, and is quite restricted on objects covered (only tables and databases, but not tablespaces and indexes). The attached patch contributes: - database_size(name) - relation_size(text) These are the well-known functions, tablespace-aware. - pg_tablespace_size(oid) - pg_database_size(oid) - pg_relation_size(oid) Tablespace-aware implementations, used by the upper functions. pg_relation_size will report sizes of indexes as well. - pg_size_pretty(bigint) Formatting of sizes, to display '146MB' instead of '152885668' Andreas Pflug
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.