On 2019-Apr-03, Kyotaro HORIGUCHI wrote: > Hello. > > At Wed, 3 Apr 2019 12:55:06 +0900, Amit Langote > <langote_amit...@lab.ntt.co.jp> wrote in > <ee892049-0fe4-afe6-cbbf-31cf44fa8...@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