- 22 Aug, 1999 1 commit
-
-
Tom Lane authored
and fix_opids processing to a single recursive pass over the plan tree executed at the very tail end of planning, rather than haphazardly here and there at different places. Now that tlist Vars do not get modified until the very end, it's possible to get rid of the klugy var_equal and match_varid partial-matching routines, and just use plain equal() throughout the optimizer. This is a step towards allowing merge and hash joins to be done on expressions instead of only Vars ...
-
- 21 Aug, 1999 3 commits
-
-
Tom Lane authored
sort order down into planner, instead of handling it only at the very top level of the planner. This fixes many things. An explicit sort is now avoided if there is a cheaper alternative (typically an indexscan) not only for ORDER BY, but also for the internal sort of GROUP BY. It works even when there is no other reason (such as a WHERE condition) to consider the indexscan. It works for indexes on functions. It works for indexes on functions, backwards. It's just so cool... CAUTION: I have changed the representation of SortClause nodes, therefore THIS UPDATE BREAKS STORED RULES. You will need to initdb.
-
Tom Lane authored
operators (and some other places), fix rangechecks in int8 to int4 conversion (same problem we recently figured out in pg_atoi).
-
Tom Lane authored
failed on 'field < textconstant' ...
-
- 18 Aug, 1999 3 commits
-
-
Bruce Momjian authored
-
Tatsuo Ishii authored
Now SET NAMES working again...
-
Tom Lane authored
above a Sort or Materialize node. As far as I can tell, the only place that actually needed that was set_tlist_references, which was being lazy about checking to see if it had a noname node to fix or not...
-
- 17 Aug, 1999 2 commits
-
-
Tom Lane authored
combinations of query-plan-type backend options. Good for testing planner/optimizer. Tedious, though.
-
Bruce Momjian authored
-
- 16 Aug, 1999 12 commits
-
-
Tom Lane authored
-
Tom Lane authored
pathkey list --- corrects misbehavior seen with multiple mergejoin clauses mentioning same variable.
-
Bruce Momjian authored
-
Bruce Momjian authored
and for src/data directories, and one minor patch for doc/README.locale. Please apply. Oleg.
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Bruce Momjian authored
-
Tom Lane authored
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.
-
Tom Lane authored
-
Tom Lane authored
-
Tom Lane authored
since it's now needed in both optimizer and parser.
-
Tatsuo Ishii authored
Patches created by Hiroki Kataoka.
-
- 15 Aug, 1999 1 commit
-
-
Thomas G. Lockhart authored
Also, improve it so that it checks for multi-column constraints. Thanks to Mark Dalphin <mdalphin@amgen.com> for reporting the problem.
-
- 14 Aug, 1999 2 commits
- 13 Aug, 1999 2 commits
-
-
Bruce Momjian authored
-
Tom Lane authored
-
- 12 Aug, 1999 2 commits
-
-
Tom Lane authored
commuted (ie, the index var appears on the right). These are now handled the same way as merge and hash join quals that need to be commuted: the actual reversing of the clause only happens if we actually choose the path and generate a plan from it. Furthermore, the clause is only reversed in the 'indexqual' field of the plan, not in the 'indxqualorig' field. This allows the clause to still be recognized and removed from qpquals of upper level join plans. Also, simplify and generalize match_clause_to_indexkey; now it recognizes binary-compatible indexes for join as well as restriction clauses.
-
Tom Lane authored
contains much code that looks like it will handle indexquals with the index key on either side of the operator, in fact indexquals must have the index key on the left because of limitations of the ScanKey machinery. Perhaps someone will be motivated to fix that someday...
-
- 10 Aug, 1999 3 commits
-
-
Bruce Momjian authored
-
Tom Lane authored
routines that are now dead code.
-
Tom Lane authored
work under a wider range of scenarios than it did --- it formerly did not handle a multi-pass inner scan, nor cases in which the inner scan's indxqualorig or non-index qual contained outer var references. I am not sure that these limitations could be hit in the existing optimizer, but they need to be fixed for future expansion.
-
- 09 Aug, 1999 9 commits
-
-
Bruce Momjian authored
> > > > was implemented by Jan Wieck. > > His work is for ascending order cases. > > > > Here is a patch to prevent sorting also in descending > > order cases. > > Because I had already changed _bt_first() to position > > backward correctly before v6.5,this patch would work. > > Hiroshi Inoue Inoue@tpf.co.jp
-
Tom Lane authored
expression_tree_mutator.
-
Tom Lane authored
Centralize att_disbursion readout logic.
-
Tom Lane authored
-
Tom Lane authored
-
Vadim B. Mikheev authored
-
Tom Lane authored
multi-scan indexscan plans; it tried to use the same table-to-index attribute mapping for all the scans, even if they used different indexes. It would klugily work as long as OR indexquals never used multikey indexes, but that's not likely to hold up much longer...
-
Tom Lane authored
walking logic with expression_tree_walker/mutator calls.
-
Tom Lane authored
to go along with expression_tree_walker. (_walker is not suitable for routines that need to alter the tree structure significantly.) Other minor cleanups in clauses.c.
-