aboutsummaryrefslogtreecommitdiff
path: root/src/backend/optimizer/path
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/optimizer/path')
-rw-r--r--src/backend/optimizer/path/indxpath.c8
-rw-r--r--src/backend/optimizer/path/joinpath.c6
-rw-r--r--src/backend/optimizer/path/joinutils.c8
-rw-r--r--src/backend/optimizer/path/mergeutils.c12
-rw-r--r--src/backend/optimizer/path/orindxpath.c8
-rw-r--r--src/backend/optimizer/path/prune.c4
6 files changed, 24 insertions, 22 deletions
diff --git a/src/backend/optimizer/path/indxpath.c b/src/backend/optimizer/path/indxpath.c
index 9605764224b..1e030537d59 100644
--- a/src/backend/optimizer/path/indxpath.c
+++ b/src/backend/optimizer/path/indxpath.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/path/indxpath.c,v 1.42 1999/02/10 21:02:38 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/path/indxpath.c,v 1.43 1999/02/11 14:58:50 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1290,9 +1290,9 @@ index_innerjoin(Query *root, RelOptInfo *rel, List *clausegroup_list,
pathnode->path.pathtype = T_IndexScan;
pathnode->path.parent = rel;
- pathnode->path.path_order = makeNode(PathOrder);
- pathnode->path.path_order->ordtype = SORTOP_ORDER;
- pathnode->path.path_order->ord.sortop = index->ordering;
+ pathnode->path.pathorder = makeNode(PathOrder);
+ pathnode->path.pathorder->ordtype = SORTOP_ORDER;
+ pathnode->path.pathorder->ord.sortop = index->ordering;
pathnode->path.pathkeys = NIL;
pathnode->indexid = index->relids;
diff --git a/src/backend/optimizer/path/joinpath.c b/src/backend/optimizer/path/joinpath.c
index 7f1277f0960..2c82d4f64d5 100644
--- a/src/backend/optimizer/path/joinpath.c
+++ b/src/backend/optimizer/path/joinpath.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/path/joinpath.c,v 1.19 1999/02/10 21:02:38 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/path/joinpath.c,v 1.20 1999/02/11 14:58:52 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -327,7 +327,7 @@ match_unsorted_outer(RelOptInfo *joinrel,
outerpath = (Path *) lfirst(i);
- outerpath_ordering = outerpath->path_order;
+ outerpath_ordering = outerpath->pathorder;
if (outerpath_ordering)
{
@@ -470,7 +470,7 @@ match_unsorted_inner(RelOptInfo *joinrel,
innerpath = (Path *) lfirst(i);
- innerpath_ordering = innerpath->path_order;
+ innerpath_ordering = innerpath->pathorder;
if (innerpath_ordering)
{
diff --git a/src/backend/optimizer/path/joinutils.c b/src/backend/optimizer/path/joinutils.c
index d57d0d6d13a..61fb755d8ba 100644
--- a/src/backend/optimizer/path/joinutils.c
+++ b/src/backend/optimizer/path/joinutils.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/joinutils.c,v 1.17 1999/02/11 05:29:07 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/joinutils.c,v 1.18 1999/02/11 14:58:53 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -214,10 +214,12 @@ match_paths_joinkeys(List *joinkeys,
foreach(i, paths)
{
Path *path = (Path *) lfirst(i);
-
+ int more_sort;
+
key_match = every_func(joinkeys, path->pathkeys, which_subkey);
- if (equal_path_ordering(ordering, path->path_order) &&
+ if (pathorder_match(ordering, path->pathorder, &more_sort) &&
+ more_sort == 0 &&
length(joinkeys) == length(path->pathkeys) && key_match)
{
diff --git a/src/backend/optimizer/path/mergeutils.c b/src/backend/optimizer/path/mergeutils.c
index 00cc5e23994..8caef0e6611 100644
--- a/src/backend/optimizer/path/mergeutils.c
+++ b/src/backend/optimizer/path/mergeutils.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/mergeutils.c,v 1.16 1999/02/10 03:52:41 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/mergeutils.c,v 1.17 1999/02/11 14:58:53 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -52,17 +52,17 @@ group_clauses_by_order(List *restrictinfo_list,
* Create a new mergeinfo node and add it to 'mergeinfo-list'
* if one does not yet exist for this merge ordering.
*/
- PathOrder *path_order;
+ PathOrder *pathorder;
MergeInfo *xmergeinfo;
Expr *clause = restrictinfo->clause;
Var *leftop = get_leftop(clause);
Var *rightop = get_rightop(clause);
JoinKey *jmkeys;
- path_order = makeNode(PathOrder);
- path_order->ordtype = MERGE_ORDER;
- path_order->ord.merge = merge_ordering;
- xmergeinfo = match_order_mergeinfo(path_order, mergeinfo_list);
+ pathorder = makeNode(PathOrder);
+ pathorder->ordtype = MERGE_ORDER;
+ pathorder->ord.merge = merge_ordering;
+ xmergeinfo = match_order_mergeinfo(pathorder, mergeinfo_list);
if (inner_relid == leftop->varno)
{
jmkeys = makeNode(JoinKey);
diff --git a/src/backend/optimizer/path/orindxpath.c b/src/backend/optimizer/path/orindxpath.c
index b53fcaf2fa9..70dc789111c 100644
--- a/src/backend/optimizer/path/orindxpath.c
+++ b/src/backend/optimizer/path/orindxpath.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/path/orindxpath.c,v 1.18 1999/02/10 21:02:39 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/path/orindxpath.c,v 1.19 1999/02/11 14:58:53 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -104,14 +104,14 @@ create_or_index_paths(Query *root,
pathnode->path.pathtype = T_IndexScan;
pathnode->path.parent = rel;
- pathnode->path.path_order = makeNode(PathOrder);
- pathnode->path.path_order->ordtype = SORTOP_ORDER;
+ pathnode->path.pathorder = makeNode(PathOrder);
+ pathnode->path.pathorder->ordtype = SORTOP_ORDER;
/*
* This is an IndexScan, but it does index lookups based
* on the order of the fields specified in the WHERE clause,
* not in any order, so the sortop is NULL.
*/
- pathnode->path.path_order->ord.sortop = NULL;
+ pathnode->path.pathorder->ord.sortop = NULL;
pathnode->path.pathkeys = NIL;
pathnode->indexqual = lcons(clausenode, NIL);
diff --git a/src/backend/optimizer/path/prune.c b/src/backend/optimizer/path/prune.c
index 6246c61125c..c3cc7344602 100644
--- a/src/backend/optimizer/path/prune.c
+++ b/src/backend/optimizer/path/prune.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/prune.c,v 1.26 1999/02/10 21:02:40 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/prune.c,v 1.27 1999/02/11 14:58:54 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -109,7 +109,7 @@ prune_rel_paths(List *rel_list)
{
path = (Path *) lfirst(y);
- if (!path->path_order->ord.sortop)
+ if (!path->pathorder->ord.sortop)
break;
}
cheapest = (JoinPath *) prune_rel_path(rel, path);