I took a look at the source code for hash join this morning and I realized that the block nested loop join is somewhat similar to that.
Thanks for the discussions.
Bramandia R.
On Fri, Oct 10, 2008 at 8:19 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Gregory Stark <stark@enterprisedb.com> writes: > So the use case of a real block nested loop would be doing a cartesian join of > two large tables where neither fits in RAM. That does seem like it might be > kind of narrow given how large the output would be.
Yeah. If you have a hashable join condition then our existing batched hash join code should be roughly equivalent to this method. So the use case is joining a couple of large tables with an un-hashable, un-indexable join condition (or none at all, ie cross product) and that just isn't something we hear people wanting to do a lot. I can't really see why we'd bother maintaining extra code for block nested loop.