Re: ToDo: show size of partitioned table - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: ToDo: show size of partitioned table
Date
Msg-id 20190403120145.GA17386@alvherre.pgsql
Whole thread Raw
In response to Re: ToDo: show size of partitioned table  (Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>)
Responses Re: ToDo: show size of partitioned table
Re: ToDo: show size of partitioned table
List pgsql-hackers
On 2019-Apr-03, Kyotaro HORIGUCHI wrote:

> Hello.
> 
> At Wed, 3 Apr 2019 12:55:06 +0900, Amit Langote <Langote_Amit_f8@lab.ntt.co.jp> wrote in
<ee892049-0fe4-afe6-cbbf-31cf44fa8522@lab.ntt.co.jp>
> > On 2019/04/03 12:02, Kyotaro HORIGUCHI wrote:
> > > \dPn doesn't show children because the are of 'r' relkind. And
> > > \dPn * doesn't show type for children.
> ...
> > I think it's intentional that leaf partitions are not shown, because the
> > patch is meant to allow showing only the "partitioned" members of
> > partition trees.  Regular \d[t|i][+] shows normal tables ('r', 'i', etc.)
> > including their size, but it's useless for partitioned tables ('P', 'I',
> > etc.) as far as showing the size is concerned, so the patch.  Even \dPn is
> > meant to only show partitions that are themselves partitioned; note the
> > "P" in the command.
> 
> +        If the modifier <literal>n</literal> (<quote>nested</quote>) is used,
> +        then non-root partitioned tables are included, and a column is shown
> +        displaying the parent of each partitioned relation.
> 
> Ah. I see. "non-root *partitined* tables". I misread the
> phrase. Sorry for the noise.

Well, is this decision an excellent one, from a UI perspective?  I was
surprised by this too and think this should be reconsidered.

I would opt for having \d NOT show partitions at all, myself.  When you
have many partitions (and we're now making the system scale into the
thousands for a single partitioned table), they clutter the output
making it unusable.  So, rather than think as \dP as "the way to show
the aggregate size of a partitioned table or index", I'd think it as
"the way to show detailed info about a partitioned table or index".
Which includes things like displaying its list of partitions and the
size of each.

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



pgsql-hackers by date:

Previous
From: Павлухин Иван
Date:
Subject: Re: Column lookup in a row performance
Next
From: Thomas Munro
Date:
Subject: Re: Refactoring the checkpointer's fsync request queue