Re: [patch] Add schema total size to psql \dn+

From: Gilles Darold <gilles(dot)darold(at)dalibo(dot)com>
To: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: [patch] Add schema total size to psql \dn+
Date: 2019-02-21 19:16:27
Message-ID: 35b7cf9e-d2a0-6b6e-59e5-e290bd28020d@dalibo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Le 21/02/2019 à 18:28, Julien Rouhaud a écrit :
> On Thu, Feb 21, 2019 at 5:42 PM Gilles Darold <gilles(dot)darold(at)dalibo(dot)com> wrote:
>> Le 21/02/2019 à 12:01, Julien Rouhaud a écrit :
>>> On Thu, Feb 21, 2019 at 11:49 AM Gilles Darold <gilles(dot)darold(at)dalibo(dot)com> wrote:
>>>>> When we want to get total size of all relation in a schema we have to
>>>>> execute one of our favorite DBA query. It is quite simple but what
>>>>> about displaying schema size when using \dn+ in psql ?
>>>>> [...]
>>>>> The attached simple patch adds this feature. Is there any cons adding
>>>>> this information? The patch tries to be compatible to all PostgreSQL
>>>>> version. Let me know if I have missed something.
> I have a few comments about the patch.
>
> You're using pg_class LEFT JOIN pg_namespace while we need INNER JOIN
> here AFAICT. Also, you're using pg_relation_size(), so fsm, vm won't
> be accounted for. You should also be bypassing the size for 8.0-
> servers where there's no pg_*_size() functions.

I agree all points. Attached is a new version of the patch that use
pg_total_relation_size() and a filter on relkind IN ('r','m','S'), JOIN
fixes and no size report before 8.1.

Thanks for the review.

--
Gilles Darold
Consultant PostgreSQL
http://dalibo.com - http://dalibo.org

Attachment Content-Type Size
psql-schema-size-v3.diff text/x-patch 1.9 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David Rowley 2019-02-21 19:49:26 Re: Delay locking partitions during INSERT and UPDATE
Previous Message Peter Eisentraut 2019-02-21 18:56:31 Re: restrict pg_stat_ssl to superuser?