Re: EXPLAIN doesn't show sufficient info for wCTE cases - Mailing list pgsql-hackers

From Robert Haas
Subject Re: EXPLAIN doesn't show sufficient info for wCTE cases
Date
Msg-id AANLkTi=3LSEVLsfP7tYbd1r7aOif0CdM-vUOF5FgFEEC@mail.gmail.com
Whole thread Raw
In response to EXPLAIN doesn't show sufficient info for wCTE cases  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: EXPLAIN doesn't show sufficient info for wCTE cases
List pgsql-hackers
On Mon, Feb 28, 2011 at 11:39 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> EXPLAIN currently shows ModifyTable nodes as just "Insert", "Update",
> or "Delete", without any indication of the target table.  This was
> more or less good enough when there could only be one such node per
> query, but it's looking pretty inadequate to me as I play around
> with data-modifying statements in WITH.
>
> The obvious thing to do is show the target table much as we do for
> table scan nodes, eg "Update on my_table".  There is a deficiency
> in that, which is that for inherited UPDATE/DELETE cases a single
> ModifyTable node could have multiple target tables.  But after
> reflecting on it a bit, I think it would be good enough to show
> the parent table name.  The individual child plans will necessarily
> include scans of the individual child tables, so you can figure
> out which is which from that if you need to know.
>
> Alternatively we could list all the target tables in a new node
> attribute, eg
>
>        Update (costs...)
>                Target Tables: foo_parent, foo_child1, ...
>
> But in the majority of cases this seems like a waste of precious
> vertical space.
>
> Thoughts?

I think it's good to include the table name, for sure.  I *think* I
agree that it isn't necessary to include the child names.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: EXPLAIN doesn't show sufficient info for wCTE cases
Next
From: Peter Eisentraut
Date:
Subject: Re: pl/python custom exceptions for SPI