Optimizer cleanup.
This commit is contained in:
parent
ead64f317b
commit
a553760845
|
@ -7,7 +7,7 @@
|
|||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/nodes/equalfuncs.c,v 1.23 1999/02/04 01:46:54 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/nodes/equalfuncs.c,v 1.24 1999/02/06 17:29:25 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
|
@ -344,7 +344,6 @@ _equalPath(Path *a, Path *b)
|
|||
if (a->p_ordering.ord.sortop == NULL ||
|
||||
b->p_ordering.ord.sortop == NULL)
|
||||
{
|
||||
|
||||
if (a->p_ordering.ord.sortop != b->p_ordering.ord.sortop)
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/joinutils.c,v 1.9 1999/02/03 21:16:27 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/joinutils.c,v 1.10 1999/02/06 17:29:26 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
|
@ -218,8 +218,8 @@ match_paths_joinkeys(List *joinkeys,
|
|||
|
||||
key_match = every_func(joinkeys, path->keys, which_subkey);
|
||||
|
||||
if (equal_path_path_ordering(ordering,
|
||||
&path->p_ordering) &&
|
||||
if (equal_path_ordering(ordering,
|
||||
&path->p_ordering) &&
|
||||
length(joinkeys) == length(path->keys) &&
|
||||
key_match)
|
||||
{
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/mergeutils.c,v 1.12 1999/02/04 03:19:09 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/mergeutils.c,v 1.13 1999/02/06 17:29:26 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
|
@ -115,7 +115,7 @@ match_order_mergeinfo(PathOrder *ordering, List *mergeinfo_list)
|
|||
xmergeorder = mergeinfo->m_ordering;
|
||||
|
||||
if ((ordering->ordtype == MERGE_ORDER &&
|
||||
equal_merge_merge_ordering(ordering->ord.merge, xmergeorder)) ||
|
||||
equal_merge_ordering(ordering->ord.merge, xmergeorder)) ||
|
||||
(ordering->ordtype == SORTOP_ORDER &&
|
||||
equal_path_merge_ordering(ordering->ord.sortop, xmergeorder)))
|
||||
{
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/util/Attic/ordering.c,v 1.10 1999/02/05 19:59:30 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/util/Attic/ordering.c,v 1.11 1999/02/06 17:29:27 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
|
@ -21,13 +21,13 @@
|
|||
static bool equal_sortops_order(Oid *ordering1, Oid *ordering2);
|
||||
|
||||
/*
|
||||
* equal-path-path-ordering--
|
||||
* equal-path-ordering--
|
||||
* Returns t iff two path orderings are equal.
|
||||
*
|
||||
*/
|
||||
bool
|
||||
equal_path_path_ordering(PathOrder *path_ordering1,
|
||||
PathOrder *path_ordering2)
|
||||
equal_path_ordering(PathOrder *path_ordering1,
|
||||
PathOrder *path_ordering2)
|
||||
{
|
||||
if (path_ordering1 == path_ordering2)
|
||||
return true;
|
||||
|
@ -83,20 +83,22 @@ equal_path_merge_ordering(Oid *path_ordering,
|
|||
}
|
||||
|
||||
/*
|
||||
* equal-merge-merge-ordering--
|
||||
* equal-merge-ordering--
|
||||
* Returns t iff two merge orderings are equal.
|
||||
*
|
||||
*/
|
||||
bool
|
||||
equal_merge_merge_ordering(MergeOrder *merge_ordering1,
|
||||
equal_merge_ordering(MergeOrder *merge_ordering1,
|
||||
MergeOrder *merge_ordering2)
|
||||
{
|
||||
return equal(merge_ordering1, merge_ordering2);
|
||||
}
|
||||
|
||||
/*****************************************************************************
|
||||
|
||||
/*
|
||||
* sortops
|
||||
*
|
||||
*****************************************************************************/
|
||||
*/
|
||||
|
||||
/*
|
||||
* equal_sort_ops_order -
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/util/pathnode.c,v 1.18 1999/02/04 19:20:12 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/util/pathnode.c,v 1.19 1999/02/06 17:29:27 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
|
@ -165,8 +165,8 @@ better_path(Path *new_path, List *unique_paths, bool *noOther)
|
|||
path = (Path *) lfirst(temp);
|
||||
|
||||
if (samekeys(path->keys, new_path->keys) &&
|
||||
equal_path_path_ordering(&path->p_ordering,
|
||||
&new_path->p_ordering))
|
||||
equal_path_ordering(&path->p_ordering,
|
||||
&new_path->p_ordering))
|
||||
{
|
||||
old_path = path;
|
||||
break;
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
*
|
||||
* Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $Id: ordering.h,v 1.9 1998/09/01 04:37:12 momjian Exp $
|
||||
* $Id: ordering.h,v 1.10 1999/02/06 17:29:30 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
|
@ -15,11 +15,11 @@
|
|||
|
||||
#include <nodes/relation.h>
|
||||
|
||||
extern bool equal_path_path_ordering(PathOrder *path_ordering1,
|
||||
extern bool equal_path_ordering(PathOrder *path_ordering1,
|
||||
PathOrder *path_ordering2);
|
||||
extern bool equal_path_merge_ordering(Oid *path_ordering,
|
||||
MergeOrder *merge_ordering);
|
||||
extern bool equal_merge_merge_ordering(MergeOrder *merge_ordering1,
|
||||
extern bool equal_merge_ordering(MergeOrder *merge_ordering1,
|
||||
MergeOrder *merge_ordering2);
|
||||
|
||||
#endif /* ORDERING_H */
|
||||
|
|
Loading…
Reference in New Issue