On Tue, 7 May 2024 at 09:18, Tom Lane <t...@sss.pgh.pa.us> wrote: > > SAIKIRAN AVULA <avulasaikiranre...@gmail.com> writes: > > I have been working on partitioned tables recently, and I have noticed > > something that doesn't seem correct with the EXPLAIN output of an > > update/delete query with a returning list. > > What do you think is not right exactly? The output has to use some > one of the correlation names for the partitioned table. I think > it generally chooses the one corresponding to the first Append arm, > but really any would be good enough for EXPLAIN's purposes.
Also looks harmless to me. But just a slight correction, you're talking about the deparse Append condition that's in set_deparse_plan(). Whereas the code that controls this for the returningList is the following in nodeModifyTable.c: /* * Initialize result tuple slot and assign its rowtype using the first * RETURNING list. We assume the rest will look the same. */ mtstate->ps.plan->targetlist = (List *) linitial(node->returningLists); David