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

Reply via email to