I wrote:
> Matthew Wakeling <matt...@flymine.org> writes:
>> Very clever. Yes, that is what is happening. I'm surprised that the system 
>> doesn't buffer the inner side to avoid having to rescan each time, but 
>> then I guess you would have problems if the buffer grew larger than 
>> memory.

> Well, it does consider adding a Materialize node for that purpose,
> but in this case it evidently thought a sort was cheaper.

Hmmm ... actually, after looking at the code, I notice that we only
consider adding a Materialize node to buffer an inner input that is a
Sort node.  The idea was suggested by Greg Stark, if memory serves.
I wonder now if it'd be worthwhile to generalize that to consider
adding a Materialize above *any* inner mergejoin input.

                        regards, tom lane

-- 
Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance

Reply via email to