Bruce Momjian
6f9ff92cc0
Tid access method feature from Hiroshi Inoue, Inoue@tpf.co.jp
1999-11-23 20:07:06 +00:00
Tom Lane
e6381966c1
Major planner/optimizer revision: get rid of PathOrder node type,
...
store all ordering information in pathkeys lists (which are now lists of
lists of PathKeyItem nodes, not just lists of lists of vars). This was
a big win --- the code is smaller and IMHO more understandable than it
was, even though it handles more cases. I believe the node changes will
not force an initdb for anyone; planner nodes don't show up in stored
rules.
1999-08-16 02:17:58 +00:00
Tom Lane
30da344cb1
Update comments about clause selectivity estimation.
1999-07-30 22:34:19 +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
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
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
fcff1cdf4e
Another pgindent run. Sorry folks.
1999-05-25 22:43:53 +00:00
Bruce Momjian
07842084fe
pgindent run over code.
1999-05-25 16:15:34 +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
65ccd1039a
Enable bushy plans by default.
1999-02-18 05:26:34 +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
56bb23a8fe
optimizer rename
1999-02-15 05:50:02 +00:00
Bruce Momjian
50034a852d
optimizer rename
1999-02-15 05:28:10 +00:00
Bruce Momjian
c5449d5354
otherrels is now unjoined_rels
1999-02-15 05:21:12 +00:00
Bruce Momjian
82682ff31f
optimizer rename
1999-02-15 03:59:28 +00:00
Bruce Momjian
ba2883b264
Remove duplicate geqo functions, and more optimizer cleanup
1999-02-15 03:22:37 +00:00
Bruce Momjian
d8b482be7c
optimizer cleanup.
1999-02-14 05:27:12 +00:00
Bruce Momjian
808a6df065
optimizer rename.
1999-02-14 05:14:15 +00:00
Bruce Momjian
61aa825876
Optimizer rename.
1999-02-14 04:57:02 +00:00
Bruce Momjian
6724a50787
Change my-function-name-- to my_function_name, and optimizer renames.
1999-02-13 23:22:53 +00:00
Bruce Momjian
ad4b27ac3f
Optimizer cleanup.
1999-02-12 17:25:05 +00:00
Bruce Momjian
c0d17c7aee
JoinPath -> NestPath for nested loop.
1999-02-12 06:43:53 +00:00
Bruce Momjian
3fdb9bb9c7
Fix optimizer and make faster.
1999-02-12 05:57:08 +00:00
Bruce Momjian
9dbb0efb0b
Optmizer cleanup
1999-02-10 21:02:50 +00:00
Bruce Momjian
f859c81c18
Rename Path.keys to Path.pathkeys. Too many 'keys' used for other things.
1999-02-10 03:52:54 +00:00
Bruce Momjian
8d9237d485
Optimizer rename ClauseInfo -> RestrictInfo. Update optimizer README.
1999-02-03 20:15:53 +00:00
Bruce Momjian
f1b7823471
Make GEQO use dependent on table and index count.
1999-02-02 20:30:18 +00:00
Bruce Momjian
fa1a8d6a97
OK, folks, here is the pgindent output.
1998-09-01 04:40:42 +00:00
Bruce Momjian
af74855a60
Renaming cleanup, no pgindent yet.
1998-09-01 03:29:17 +00:00
Bruce Momjian
956b91a944
Cleanups of optimizer.
1998-08-10 04:49:39 +00:00
Bruce Momjian
2d32d909b5
Cleanup optimizer function names and clarify code.
1998-08-10 02:26:40 +00:00
Bruce Momjian
e46df2ff6e
OPTIMIZER_DEBUG additions.
1998-08-07 05:02:32 +00:00
Bruce Momjian
c8b42a6151
Update flow chart.
1998-08-04 00:42:14 +00:00
Bruce Momjian
584f9438ca
Rename Rel to RelOptInfo.
1998-07-18 04:22:52 +00:00
Bruce Momjian
6bd323c6b3
Remove un-needed braces around single statements.
1998-06-15 19:30:31 +00:00
Bruce Momjian
a32450a585
pgindent run before 6.3 release, with Thomas' requested changes.
1998-02-26 04:46:47 +00:00
Bruce Momjian
78a055a659
Remove some recursion in optimizer and clean up some code there.
1997-12-21 05:18:48 +00:00
Bruce Momjian
59f6a57e59
Used modified version of indent that understands over 100 typedefs.
1997-09-08 21:56:23 +00:00
Bruce Momjian
319dbfa736
Another PGINDENT run that changes variable indenting and case label indenting. Also static variable indenting.
1997-09-08 02:41:22 +00:00
Bruce Momjian
1ccd423235
Massive commit to run PGINDENT on all *.c and *.h files.
1997-09-07 05:04:48 +00:00
Vadim B. Mikheev
f4161503e6
if ( rel->size <= 0 )
...
rel->size = compute_rel_size(rel);
1997-06-10 07:55:47 +00:00
Vadim B. Mikheev
11073bee5c
allpaths.c:find_join_paths(): compute_rel_size() shouldn't be called
...
for join-relations. Sizes already computed by
prune_rel_paths():compute_joinrel_size().
joinrels.c:
< if ( _use_right_sided_plans_ )
---
> if ( _use_right_sided_plans_ &&
> length (outer_rel->relids) > 1 )
- r_plans are useful when outer_rel is join-relation... It
decreases the size of search space...
1997-06-05 09:33:52 +00:00
Vadim B. Mikheev
05404562fb
Use GEQO if _use_geqo_ is TRUE and # of relations is >= _use_geqo_rels_
...
(both are settable via SET geqo TO ...).
1997-06-02 11:14:40 +00:00
Bruce Momjian
8bc7439ccf
Enable GEQO for more than six tables, from Martin.
1997-06-01 02:56:00 +00:00
Vadim B. Mikheev
a4792bd3d6
#ifdef GEQO
...
bool _use_geqo_ = true;
#else
bool _use_geqo_ = false;
#endif
_use_geqo_ is settable via SET var TO ...
1997-04-29 04:37:22 +00:00
Marc G. Fournier
29138eeb3c
Merge in GEQO Optimizer
...
From: "Martin S. Utesch" <utesch@aut.tu-freiberg.de>
1997-02-19 12:59:07 +00:00
Bruce Momjian
aaeef4d17d
All external function definitions now have prototypes that are checked.
1996-11-10 03:06:38 +00:00
Bruce Momjian
4b2b8592a0
Compile and warning cleanup
1996-11-08 06:02:30 +00:00
Marc G. Fournier
58a0150f64
More files cleaned out
1996-11-06 09:29:26 +00:00
Marc G. Fournier
d31084e9d1
Postgres95 1.01 Distribution - Virgin Sources
1996-07-09 06:22:35 +00:00