Re: Changed SRF in targetlist handling
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: David Fetter <david@fetter.org>
Cc: Andres Freund <andres@anarazel.de>, pgsql-hackers@postgresql.org
Date: 2016-05-23T18:27:23Z
Lists: pgsql-hackers
David Fetter <david@fetter.org> writes: > On Mon, May 23, 2016 at 01:36:57PM -0400, Tom Lane wrote: >> David Fetter <david@fetter.org> writes: >>> How about making "TABLE generate_series(1,n)" work? It's even >>> shorter in exchange for some cognitive load. >> No thanks --- the word after TABLE ought to be a table name, not some >> arbitrary expression. That's way too much mess to save one keystroke. > It's not just about saving a keystroke. This change would go with > removing the ability to do SRFs in the target list of a SELECT > query. I guess you did not understand that I was rejecting doing that. Telling people they have to modify existing code that does this and works fine is exactly what I felt we can't do. We might be able to blow off complicated cases, but I think simpler cases are too common in the field. I'm on board with fixing things so that the *implementation* doesn't support SRF-in-tlist. But we can't just remove it from the language. regards, tom lane
Commits
-
Remove obsoleted code relating to targetlist SRF evaluation.
- ea15e18677fc 10.0 landed
-
Doc: improve documentation of new SRF-in-tlist behavior.
- f13a1277aa2d 10.0 landed
-
Move targetlist SRF handling from expression evaluation to new executor node.
- 69f4b9c85f16 10.0 landed
-
Don't split up SRFs when choosing to postpone SELECT output expressions.
- d543170f2fdd 9.6.0 cited