Tom Lane
5da466c597
Make sure targetlist generated for subplan does not share
...
nodes with HAVING qualifier of upper plan. Have not seen any failures,
just being a little bit paranoid...
1999-05-04 00:00:20 +00:00
Tom Lane
da5f1dd722
Revise union_planner and associated routines to clean up breakage
...
from EXCEPT/HAVING patch. Cases involving nontrivial GROUP BY expressions
now work again. Also, the code is at least somewhat better documented...
1999-05-03 00:38:44 +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
17dbeebb5f
Fill in reasonable-looking cost estimates in inserted nodes.
...
This makes no difference to the optimizer, which has already decided what
it's gonna do, but it makes the output of EXPLAIN much more plausible.
1999-04-30 04:04:27 +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
970583ab4f
Several routines in setrefs.c would crash on array refs
...
due to lack of check for recursing into a null subexpression.
1999-04-29 00:20:27 +00:00
Tom Lane
eb00bdf237
Insert a test for missing targetlist entry in replace_agg_clause.
1999-04-26 00:37:46 +00:00
Tom Lane
4438b70b94
Repair some problems in planner's handling of HAVING clauses.
...
This fixes a few of the problems Hiroshi Inoue complained of, but
I have not touched the rewrite-related issues.
1999-04-19 01:43:12 +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
bd6f98af31
I suggest the following portability patch, which does not
...
change functionality, but makes the code more ANSI C'ish.
My AIX xlc compiler barfs on all of these. Can someone please
review and apply to current.
<<port.patch>>
Thanks
Andreas
1999-03-19 18:56:43 +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
e0345e09bf
Partial fix for copied-plan bugs reported by Hiroshi Inoue:
...
_copyResult didn't copy subPlan structure completely. _copyAgg is still
busted, apparently because of changes from EXCEPT/INTERSECT patch
(get_agg_tlist_references is no longer sufficient to find all aggregates).
No time to look at that tonight, however.
1999-03-03 00:02:42 +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
e78662d879
optimizer cleanup
1999-02-18 04:55:54 +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
cd550c7672
Update optimizer readme.
1999-02-15 22:19:01 +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
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
Tom Lane
944d3c395e
Replace non-idiomatic nconc(x, lcons(y, NIL)) with lappend(x, y).
1999-02-15 02:04:58 +00:00
Tom Lane
dec354ca97
Fix a number of places that made faulty assumptions about
...
what is_opclause will accept.
1999-02-15 01:06:59 +00:00
Tom Lane
5500039843
Fix optimizer coredump with unary-operator WHERE clauses.
...
A test case is:
create table linetab (x line);
select * from linetab where ?| x;
which coredumps in 6.4.2 and current sources.
1999-02-14 22:24:25 +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