OSDN Git Service

Remove cost_hashjoin's very ancient hack to discourage (once, entirely forbid)
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 8 Jan 2007 16:09:22 +0000 (16:09 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 8 Jan 2007 16:09:22 +0000 (16:09 +0000)
commit9a9a143a980c3a4c9c825ce44abf57718f9f66cb
tree9e0c61bc04b4d792d08c6fdaf06b1a30b5cf6479
parentd807c7ef3f1a04026c3c4b5b24954f7fc84d0e46
Remove cost_hashjoin's very ancient hack to discourage (once, entirely forbid)
hash joins with the estimated-larger relation on the inside.  There are
several cases where doing that makes perfect sense, and in cases where it
doesn't, the regular cost computation really ought to be able to figure that
out.  Make some marginal tweaks in said computation to try to get results
approximating reality a bit better.  Per an example from Shane Ambler.

Also, fix an oversight in the original patch to add seq_page_cost: the costs
of spilling a hash join to disk should be scaled by seq_page_cost.
src/backend/optimizer/path/costsize.c