On Thu, Jan 2, 2025 at 4:41 PM Tom Lane <t...@sss.pgh.pa.us> wrote:
> I'm not seeing where there's a correctness issue here?  The parser
> is charged with assigning aliases to RTEs that lack one, and with
> this patch that's still true.  It's just assigning a different alias
> than it did before.  There is no question of whether the alias can
> "leak" out of the implicit sub-select; it cannot, by SQL's scoping
> rules.  We have to avoid changing anything if there are clauses
> inside the implicit sub-select that could reference the old choice
> of alias, but the patch does that.

Hmm, maybe you're right. I think when I looked at this initially, I
thought the problem had to do with conflating the plan choice, but
looking at it again, it looks like more of a
using-the-alias-before-it's-defined problem, which I guess is easy
enough to fix without much action at a distance.

> (Or we could decide to simplify
> things at the cost of breaking such SQL code, since there probably
> is none in the field.  It's still not clear to me which choice is
> better.)

This part I don't understand.

-- 
Robert Haas
EDB: http://www.enterprisedb.com


Reply via email to