On 2016-09-02 10:34:54 -0400, Tom Lane wrote: > Andres Freund <and...@anarazel.de> writes: > > On 2016-09-02 10:20:42 -0400, Tom Lane wrote: > >> ... ISTM all we > >> need is that the SRF be on the inside of the join, which is automatic > >> if it's LATERAL. > > > Right. But there's nothing to force a lateral reference to be there > > intrinsically. I've added a "fake" lateral reference to the ROWS FROM > > RTE to the subquery, when there's none otherwise, but that's not > > entirely pretty. > > Hm, do you get cases like this right: > > select generate_series(1, t1.a) from t1, t2; > > That would result in a lateral ref from the SRF RTE to t1, but you really > need to treat it as laterally dependent on the join of t1/t2 in order to > preserve the old semantics. That is, you need to be laterally dependent > on the whole FROM clause regardless of which variable references appear.
Yes - as the original query is moved into a subquery, the lateral dependency I force-add simply is to the entire subquery atm (as a wholerow var). -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers