1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-15 03:41:20 +03:00
Commit Graph

165 Commits

Author SHA1 Message Date
Tom Lane
8ae29a1d40 Remove 'restrictinfojoinid' field from RestrictInfo nodes.
The only place it was being used was as temporary storage in indxpath.c,
and the logic was wrong: the same restrictinfo node could get chosen to
carry the info for two different joins.  Right fix is to return a second
list of unjoined-relids parallel to the list of clause groups.
1999-07-25 17:53:27 +00:00
Tom Lane
ac4913a0dd Clean up messy clause-selectivity code in clausesel.c; repair bug
identified by Hiroshi (incorrect cost attributed to OR clauses
after multiple passes through set_rest_selec()).  I think the code
was trying to allow selectivities of OR subclauses to be passed in
from outside, but noplace was actually passing any useful data, and
set_rest_selec() was passing wrong data.

Restructure representation of "indexqual" in IndexPath nodes so that
it is the same as for indxqual in completed IndexScan nodes: namely,
a toplevel list with an entry for each pass of the index scan, having
sublists that are implicitly-ANDed index qual conditions for that pass.
You don't want to know what the old representation was :-(

Improve documentation of OR-clause indexscan functions.

Remove useless 'notclause' field from RestrictInfo nodes.  (This might
force an initdb for anyone who has stored rules containing RestrictInfos,
but I do not think that RestrictInfo ever appears in completed plans.)
1999-07-24 23:21:14 +00:00
Tom Lane
348bdbce79 Minor code beautification, extensive improvement of
comments.  This file was full of obsolete and just plain wrong
commentary...
1999-07-23 03:34:49 +00:00
Bruce Momjian
3406901a29 Move some system includes into c.h, and remove duplicates. 1999-07-17 20:18:55 +00:00
Bruce Momjian
a71802e12e Final cleanup. 1999-07-16 05:00:38 +00:00
Bruce Momjian
9b645d481c Update #include cleanups 1999-07-16 03:14:30 +00:00
Bruce Momjian
2e6b1e63a3 Remove unused #includes in *.c files. 1999-07-15 22:40:16 +00:00
Bruce Momjian
4b2c2850bf Clean up #include in /include directory. Add scripts for checking includes. 1999-07-15 15:21:54 +00:00
Bruce Momjian
e9c977da7d Fix spelling of variable name. 1999-07-07 09:36:45 +00:00
Bruce Momjian
9f7ac20e57 Cleanup of min tuple size. 1999-07-07 09:27:28 +00:00
Bruce Momjian
1391098851 Fix misspelling. 1999-07-07 09:11:15 +00:00
Bruce Momjian
97dfff832c Fix to prevent too large tuple from being created. 1999-07-03 00:33:04 +00:00
Bruce Momjian
326d8658ad Change form() to varargform() to prevent portability problems. 1999-06-19 04:54:23 +00:00
Bruce Momjian
278bbf4572 Make functions static or NOT_USED as appropriate. 1999-05-26 12:57:23 +00:00
Bruce Momjian
fcff1cdf4e Another pgindent run. Sorry folks. 1999-05-25 22:43:53 +00:00
Bruce Momjian
4eadfe8754 Make 0x007f -> (unsigned)0x7f to make pgindent happy. 1999-05-25 22:04:56 +00:00
Bruce Momjian
07842084fe pgindent run over code. 1999-05-25 16:15:34 +00:00
Tom Lane
c2f0d565f3 Now that hashjoin is reliable for large joins (knock on wood),
remove optimizer's arbitrary limit on how large a join it will use hashing
for.  (The limit was too large to prevent the problems we'd been seeing,
anyway...)
1999-05-18 21:36:10 +00:00
Tom Lane
0b8b1fe3aa Tighten coding in new_join_pathkey, which seems to be a hotspot
for GEQO ...
1999-05-17 00:26:33 +00:00
Tom Lane
fecb2b0024 Minor code cleanup in optimizer. 1999-05-16 19:45:37 +00:00
Bruce Momjian
4853495e03 Change error messages to oids come out as %u and not %d. Change has no
real affect now.
1999-05-10 00:46:32 +00:00
Tom Lane
605d84941d Clean up cost_sort some more: most callers were double-counting
the cost of reading the source data.
1999-05-01 19:47:42 +00:00
Tom Lane
7a7ba33536 Clean up some bogosities in path cost estimation, like
sometimes estimating an index scan of a table to be cheaper than a
sequential scan of the same tuples...
1999-04-30 04:01:44 +00:00
Tom Lane
11a0027e28 Fix nasty little typo that prevented get_cheapest_path_for_joinkeys
from ever returning a path.  This put a bit of a crimp in the system's
ability to generate intelligent merge-join plans...
1999-04-30 03:59:06 +00:00
Tom Lane
e91f43a122 Fix potential overflow problems when relation size exceeds
2gig.  Fix failure to reliably put the smaller relation on the inside of
a hashjoin.
1999-04-05 02:07:07 +00:00
Tom Lane
ff38837fe9 Fix nasty bug in optimization of multiway joins: optimizer
would sometimes generate a plan that omitted a sort step before merge.
1999-04-03 00:18:28 +00:00
Bruce Momjian
dc02fd709f cleanups 1999-03-18 19:59:55 +00:00
Bruce Momjian
f7430af934 Fix OR index selectivity problem. 1999-03-08 14:01:57 +00:00
Bruce Momjian
c831d08fac Fix for Alpha OR selectivity bug. 1999-03-08 13:35:50 +00:00
Tom Lane
b204d10c79 Executor no longer cares about mergejoinop, mergerightorder, mergeleftorder,
so remove them from MergeJoin node.  Hack together a partial
solution for commuted mergejoin operators --- yesterday
a mergejoin int4 = int8 would crash if the planner decided to
commute it, today it works.  The planner's representation of
mergejoins really needs a rewrite though.
Also, further testing of mergejoin ops in opr_sanity regress test.
1999-03-01 00:10:44 +00:00
Bruce Momjian
ceb233ed11 more cleanup 1999-02-22 06:08:48 +00:00
Bruce Momjian
1ed5cbbfd8 Final optimizer cleanups. 1999-02-22 05:26:58 +00:00
Marc G. Fournier
8c3e8a8a0e From: Tatsuo Ishii <t-ishii@sra.co.jp>
Ok. I made patches replacing all of "#if FALSE" or "#if 0" to "#ifdef
NOT_USED" for current. I have tested these patches in that the
postgres binaries are identical.
1999-02-21 03:49:55 +00:00
Bruce Momjian
23c30246d7 pathkeys.c cleanup. 1999-02-21 01:55:03 +00:00
Bruce Momjian
75cccd0ad3 pathkeys fixes 1999-02-20 19:02:43 +00:00
Bruce Momjian
0ff2733355 Update pathkeys comparison function. 1999-02-20 18:01:02 +00:00
Bruce Momjian
148ec3b1d8 update pathkey description. 1999-02-20 16:32:35 +00:00
Bruce Momjian
9188aab758 add pathkeys description. 1999-02-20 16:28:20 +00:00
Bruce Momjian
67fd67f53a another rename of optimizer 1999-02-20 15:27:42 +00:00
Bruce Momjian
612b8434e4 optimizer cleanup 1999-02-19 05:18:06 +00:00
Bruce Momjian
8ab72a38df optimizer cleanup 1999-02-19 02:05:20 +00:00
Bruce Momjian
cd38f08598 rename optimizer file name 1999-02-18 19:58:53 +00:00
Bruce Momjian
b4e7510e09 Enable bushy and right-hand queries by default. 1999-02-18 06:01:11 +00:00
Bruce Momjian
65ccd1039a Enable bushy plans by default. 1999-02-18 05:26:34 +00:00
Bruce Momjian
d977ff7b52 more optimizer cleanups 1999-02-18 04:45:36 +00:00
Bruce Momjian
31cce21fb0 Fix bushy plans. Cleanup. 1999-02-18 00:49:48 +00:00
Bruce Momjian
c82ca4c158 Re-enable bushy plans. Vadim want them. 1999-02-16 00:41:03 +00:00
Bruce Momjian
e6bf7b4d93 rename 1999-02-15 05:56:07 +00:00
Bruce Momjian
56bb23a8fe optimizer rename 1999-02-15 05:50:02 +00:00
Bruce Momjian
50034a852d optimizer rename 1999-02-15 05:28:10 +00:00