Re: Implement targetlist SRFs using ROWS FROM() (was Changed SRF in targetlist handling)
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Kevin Grittner <kgrittn@gmail.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Robert Haas <robertmhaas@gmail.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2016-09-02T15:31:57Z
Lists: pgsql-hackers
On 2016-09-02 09:41:28 -0500, Kevin Grittner wrote: > On Fri, Sep 2, 2016 at 9:25 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > Andres Freund <andres@anarazel.de> writes: > >> Oh, and we've previously re-added that based on > >> complaints. C.f. d543170f2fdd6d9845aaf91dc0f6be7a2bf0d9e7 (and others > >> IIRC). > > > > That one wasn't about row order per se, but I agree that people *will* > > bitch if we change the behavior, especially if we don't provide a way > > to fix it. > > They might also bitch if you add any overhead to put rows in a > specific order when they subsequently sort the rows into some > different order. Huh? It's just the order the SRFs are returning rows. If they subsequently ORDER, there's no issue. And that doesn't have a performance impact afaict. > You might even destroy an order that would have > allowed a sort step to be skipped, so you would pay twice -- once > to put them into some "implied" order and then to sort them back > into the order they would have had without that extra effort. So you're arguing that you can't rely on order, but that users rely on order? Greetings, Andres Freund
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