BUG #9041: Strange error message with LATERAL and mixed WHERE/ON conditions - Mailing list pgsql-bugs

From levertond@googlemail.com
Subject BUG #9041: Strange error message with LATERAL and mixed WHERE/ON conditions
Date
Msg-id 20140130151003.25475.92981@wrigleys.postgresql.org
Whole thread Raw
Responses Re: BUG #9041: Strange error message with LATERAL and mixed WHERE/ON conditions  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
The following bug has been logged on the website:

Bug reference:      9041
Logged by:          David Leverton
Email address:      levertond@googlemail.com
PostgreSQL version: 9.3.2
Operating system:   Oracle Enterprise Linux 5 x86_64
Description:

The following query fails with the message "JOIN qualification cannot refer
to other relations":

SELECT *
FROM (SELECT 1 AS x) x
CROSS JOIN (SELECT 1 AS y) y
LEFT JOIN LATERAL (
  SELECT *
  FROM (SELECT 1 AS z) z
  WHERE z.z = x.x
) z ON z.z = y.y;

I don't see why this shouldn't be legal, but if it isn't it should at least
give a less vague error message.

(For the record, the mixture of WHERE and ON is because in the real query,
the LATERAL subquery including the WHERE clause is actually an inlineable
SRF call.)

Postgres was installed using the pgrpms.org packages, and all settings other
than listen_addresses are at their default values.

pgsql-bugs by date:

Previous
From: craig.macdonald@glasgow.ac.uk
Date:
Subject: BUG #9038: trgm must have operand in index creation
Next
From: Tomáš Vondra
Date:
Subject: Re: BUG #9038: trgm must have operand in index creation