diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2007-05-22 01:40:53 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2007-05-22 01:40:53 +0000 |
commit | 9ccf784833d6ff0a1d89a8eb68094767cc1c1396 (patch) | |
tree | 7861269c3d3e4875f43aa42854dfd0562ed64c50 /src/tutorial/funcs.c | |
parent | 3c49269b90c2ef4ef69c40e15e164b787bbb583a (diff) | |
download | postgresql-9ccf784833d6ff0a1d89a8eb68094767cc1c1396.tar.gz postgresql-9ccf784833d6ff0a1d89a8eb68094767cc1c1396.zip |
Fix best_inner_indexscan to return both the cheapest-total-cost and
cheapest-startup-cost innerjoin indexscans, and make joinpath.c consider
both of these (when different) as the inside of a nestloop join. The
original design was based on the assumption that indexscan paths always
have negligible startup cost, and so total cost is the only important
figure of merit; an assumption that's obviously broken by bitmap
indexscans. This oversight could lead to choosing poor plans in cases
where fast-start behavior is more important than total cost, such as
LIMIT and IN queries. 8.1-vintage brain fade exposed by an example from
Chuck D.
Diffstat (limited to 'src/tutorial/funcs.c')
0 files changed, 0 insertions, 0 deletions