On Thu, May 12, 2016 at 11:48 AM, Tom Lane <t...@sss.pgh.pa.us> wrote: > Robert Haas <robertmh...@gmail.com> writes: >> I could be wrong, but I thought that the target list for an expression >> would always contain only Vars at this stage. Non-default tlists get >> injected at the end of scan/join planning. Am I wrong? > > Target list for a relation, you mean? See relation.h: > > * reltarget - Default Path output tlist for this rel; normally contains > * Var and PlaceHolderVar nodes for the values we need to > * output from this relation. > * List is in no particular order, but all rels of an > * appendrel set must use corresponding orders. > * NOTE: in an appendrel child relation, may contain > * arbitrary expressions pulled up from a subquery!
Err, wow. That makes my head hurt. Can you explain why this case only arises for appendrel children, and not for plain rels? -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers