diff options
author | Bruce Momjian <bruce@momjian.us> | 1999-02-12 17:25:05 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 1999-02-12 17:25:05 +0000 |
commit | ad4b27ac3f281401b7e8a717f100e403a222224d (patch) | |
tree | fb61a925ddb0db5e1f088ffee70780edb30424c1 /src/include | |
parent | c0d17c7aee68bb73140d11dc03973157e6ca7e76 (diff) | |
download | postgresql-ad4b27ac3f281401b7e8a717f100e403a222224d.tar.gz postgresql-ad4b27ac3f281401b7e8a717f100e403a222224d.zip |
Optimizer cleanup.
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/executor/nodeNestloop.h | 5 | ||||
-rw-r--r-- | src/include/nodes/relation.h | 10 | ||||
-rw-r--r-- | src/include/optimizer/cost.h | 4 | ||||
-rw-r--r-- | src/include/optimizer/xfunc.h | 16 |
4 files changed, 19 insertions, 16 deletions
diff --git a/src/include/executor/nodeNestloop.h b/src/include/executor/nodeNestloop.h index 2c79b4d62a2..21cf4078382 100644 --- a/src/include/executor/nodeNestloop.h +++ b/src/include/executor/nodeNestloop.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: nodeNestloop.h,v 1.7 1998/09/01 04:36:03 momjian Exp $ + * $Id: nodeNestloop.h,v 1.8 1999/02/12 17:24:55 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -21,6 +21,7 @@ extern TupleTableSlot *ExecNestLoop(NestLoop *node, Plan *parent); extern bool ExecInitNestLoop(NestLoop *node, EState *estate, Plan *parent); extern int ExecCountSlotsNestLoop(NestLoop *node); extern void ExecEndNestLoop(NestLoop *node); -extern void ExecReScanNestLoop(NestLoop *node, ExprContext *exprCtxt, Plan *parent); +extern void ExecReScanNestLoop(NestLoop *node, ExprContext *exprCtxt, + Plan *parent); #endif /* NODENESTLOOP_H */ diff --git a/src/include/nodes/relation.h b/src/include/nodes/relation.h index 567a810e732..80930a23c5b 100644 --- a/src/include/nodes/relation.h +++ b/src/include/nodes/relation.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: relation.h,v 1.21 1999/02/12 06:43:47 momjian Exp $ + * $Id: relation.h,v 1.22 1999/02/12 17:24:59 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -168,9 +168,11 @@ typedef struct NestPath Path *innerjoinpath; } NestPath; +typedef NestPath JoinPath; + typedef struct MergePath { - NestPath jpath; + JoinPath jpath; List *path_mergeclauses; List *outersortkeys; List *innersortkeys; @@ -178,7 +180,7 @@ typedef struct MergePath typedef struct HashPath { - NestPath jpath; + JoinPath jpath; List *path_hashclauses; List *outerhashkeys; List *innerhashkeys; @@ -262,7 +264,7 @@ typedef struct Iter /* ** Stream: ** A stream represents a root-to-leaf path in a plan tree (i.e. a tree of -** NestPaths and Paths). The stream includes pointers to all Path nodes, +** JoinPaths and Paths). The stream includes pointers to all Path nodes, ** as well as to any clauses that reside above Path nodes. This structure ** is used to make Path nodes and clauses look similar, so that Predicate ** Migration can run. diff --git a/src/include/optimizer/cost.h b/src/include/optimizer/cost.h index affe0814a33..a94becb5a6e 100644 --- a/src/include/optimizer/cost.h +++ b/src/include/optimizer/cost.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: cost.h,v 1.15 1999/02/12 06:43:52 momjian Exp $ + * $Id: cost.h,v 1.16 1999/02/12 17:25:05 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -45,7 +45,7 @@ extern Cost cost_hashjoin(Cost outercost, Cost innercost, List *outerkeys, int outerwidth, int innerwidth); extern int compute_rel_size(RelOptInfo *rel); extern int compute_rel_width(RelOptInfo *rel); -extern int compute_joinrel_size(NestPath *joinpath); +extern int compute_joinrel_size(JoinPath *joinpath); extern int page_size(int tuples, int width); /* diff --git a/src/include/optimizer/xfunc.h b/src/include/optimizer/xfunc.h index 9c9e8ada762..cea01b52029 100644 --- a/src/include/optimizer/xfunc.h +++ b/src/include/optimizer/xfunc.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: xfunc.h,v 1.13 1999/02/12 06:43:53 momjian Exp $ + * $Id: xfunc.h,v 1.14 1999/02/12 17:25:05 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -50,13 +50,13 @@ extern int XfuncMode; /* defined in tcop/postgres.c */ /* function prototypes from planner/path/xfunc.c */ extern void xfunc_trypullup(RelOptInfo *rel); -extern int xfunc_shouldpull(Path *childpath, NestPath *parentpath, +extern int xfunc_shouldpull(Path *childpath, JoinPath *parentpath, int whichchild, RestrictInfo * maxcinfopt); -extern RestrictInfo *xfunc_pullup(Path *childpath, NestPath *parentpath, RestrictInfo * cinfo, +extern RestrictInfo *xfunc_pullup(Path *childpath, JoinPath *parentpath, RestrictInfo * cinfo, int whichchild, int clausetype); extern Cost xfunc_rank(Expr *clause); extern Cost xfunc_expense(Query *queryInfo, Expr *clause); -extern Cost xfunc_join_expense(NestPath *path, int whichchild); +extern Cost xfunc_join_expense(JoinPath *path, int whichchild); extern Cost xfunc_local_expense(Expr *clause); extern Cost xfunc_func_expense(Expr *node, List *args); extern int xfunc_width(Expr *clause); @@ -65,10 +65,10 @@ extern int xfunc_width(Expr *clause); /* extern int xfunc_card_unreferenced(Expr *clause, Relid referenced); */ extern int xfunc_card_product(Relid relids); extern List *xfunc_find_references(List *clause); -extern List *xfunc_primary_join(NestPath *pathnode); +extern List *xfunc_primary_join(JoinPath *pathnode); extern Cost xfunc_get_path_cost(Path *pathnode); -extern Cost xfunc_total_path_cost(NestPath *pathnode); -extern Cost xfunc_expense_per_tuple(NestPath *joinnode, int whichchild); +extern Cost xfunc_total_path_cost(JoinPath *pathnode); +extern Cost xfunc_expense_per_tuple(JoinPath *joinnode, int whichchild); extern void xfunc_fixvars(Expr *clause, RelOptInfo *rel, int varno); extern int xfunc_cinfo_compare(void *arg1, void *arg2); extern int xfunc_clause_compare(void *arg1, void *arg2); @@ -76,7 +76,7 @@ extern void xfunc_disjunct_sort(List *clause_list); extern int xfunc_disjunct_compare(void *arg1, void *arg2); extern int xfunc_func_width(RegProcedure funcid, List *args); extern int xfunc_tuple_width(Relation rd); -extern int xfunc_num_join_clauses(NestPath *path); +extern int xfunc_num_join_clauses(JoinPath *path); extern List *xfunc_LispRemove(List *foo, List *bar); extern bool xfunc_copyrel(RelOptInfo *from, RelOptInfo ** to); |