mirror of
https://github.com/postgres/postgres.git
synced 2025-11-15 03:41:20 +03:00
Cleanup of source files where 'return' or 'var =' is alone on a line.
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/clausesel.c,v 1.15 1999/02/03 20:15:28 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/clausesel.c,v 1.16 1999/02/03 21:16:24 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -131,8 +131,7 @@ set_rest_selec(Query *root, List *restrictinfo_list)
|
||||
*/
|
||||
if (valid_or_clause(clausenode) || FLOAT_IS_ZERO(cost_clause))
|
||||
{
|
||||
clausenode->selectivity =
|
||||
compute_clause_selec(root,
|
||||
clausenode->selectivity = compute_clause_selec(root,
|
||||
(Node *) clausenode->clause,
|
||||
lcons(makeFloat(cost_clause), NIL));
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/hashutils.c,v 1.8 1999/02/03 20:15:32 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/hashutils.c,v 1.9 1999/02/03 21:16:25 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -60,8 +60,7 @@ group_clauses_by_hashop(List *restrictinfo_list,
|
||||
Var *rightop = get_rightop(clause);
|
||||
JoinKey *keys = (JoinKey *) NULL;
|
||||
|
||||
xhashinfo =
|
||||
match_hashop_hashinfo(hashjoinop, hashinfo_list);
|
||||
xhashinfo = match_hashop_hashinfo(hashjoinop, hashinfo_list);
|
||||
|
||||
if (inner_relid == leftop->varno)
|
||||
{
|
||||
@@ -89,11 +88,9 @@ group_clauses_by_hashop(List *restrictinfo_list,
|
||||
hashinfo_list = nreverse(hashinfo_list);
|
||||
}
|
||||
|
||||
xhashinfo->jmethod.clauses =
|
||||
lcons(clause, xhashinfo->jmethod.clauses);
|
||||
xhashinfo->jmethod.clauses = lcons(clause, xhashinfo->jmethod.clauses);
|
||||
|
||||
xhashinfo->jmethod.jmkeys =
|
||||
lcons(keys, xhashinfo->jmethod.jmkeys);
|
||||
xhashinfo->jmethod.jmkeys = lcons(keys, xhashinfo->jmethod.jmkeys);
|
||||
}
|
||||
}
|
||||
return hashinfo_list;
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/indxpath.c,v 1.36 1999/02/03 20:15:32 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/indxpath.c,v 1.37 1999/02/03 21:16:26 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -238,8 +238,7 @@ match_index_orclauses(RelOptInfo * rel,
|
||||
* each of its subclauses. The list is generated by adding
|
||||
* 'index' to the existing list where appropriate.
|
||||
*/
|
||||
restrictinfo->indexids =
|
||||
match_index_orclause(rel, index, indexkey,
|
||||
restrictinfo->indexids = match_index_orclause(rel, index, indexkey,
|
||||
xclass,
|
||||
restrictinfo->clause->args,
|
||||
restrictinfo->indexids);
|
||||
@@ -649,8 +648,7 @@ match_clause_to_indexkey(RelOptInfo * rel,
|
||||
{
|
||||
restrict_op = oprid(newop);
|
||||
|
||||
isIndexable =
|
||||
(op_class(restrict_op, xclass, index->relam) &&
|
||||
isIndexable = (op_class(restrict_op, xclass, index->relam) &&
|
||||
IndexScanableOperand(leftop,
|
||||
indexkey,
|
||||
rel,
|
||||
@@ -670,8 +668,7 @@ match_clause_to_indexkey(RelOptInfo * rel,
|
||||
else if ((leftop && IsA(leftop, Const)) ||
|
||||
(leftop && IsA(leftop, Param)))
|
||||
{
|
||||
restrict_op =
|
||||
get_commutator(((Oper *) ((Expr *) clause)->oper)->opno);
|
||||
restrict_op = get_commutator(((Oper *) ((Expr *) clause)->oper)->opno);
|
||||
|
||||
isIndexable = ((restrict_op != InvalidOid) &&
|
||||
op_class(restrict_op, xclass, index->relam) &&
|
||||
@@ -703,8 +700,7 @@ match_clause_to_indexkey(RelOptInfo * rel,
|
||||
|
||||
if (HeapTupleIsValid(newop) && (oprid(newop) != restrict_op))
|
||||
{
|
||||
restrict_op =
|
||||
get_commutator(oprid(newop));
|
||||
restrict_op = get_commutator(oprid(newop));
|
||||
|
||||
isIndexable = ((restrict_op != InvalidOid) &&
|
||||
op_class(restrict_op, xclass, index->relam) &&
|
||||
@@ -1201,8 +1197,7 @@ indexable_joinclauses(RelOptInfo * rel, RelOptInfo * index,
|
||||
|
||||
if (joininfo->jinfo_restrictinfo == NIL)
|
||||
continue;
|
||||
clausegroups =
|
||||
group_clauses_by_ikey_for_joins(rel,
|
||||
clausegroups = group_clauses_by_ikey_for_joins(rel,
|
||||
index,
|
||||
index->indexkeys,
|
||||
index->classlist,
|
||||
@@ -1213,8 +1208,7 @@ indexable_joinclauses(RelOptInfo * rel, RelOptInfo * index,
|
||||
{
|
||||
List *clauses = lfirst(clausegroups);
|
||||
|
||||
((RestrictInfo *) lfirst(clauses))->cinfojoinid =
|
||||
joininfo->otherrels;
|
||||
((RestrictInfo *) lfirst(clauses))->cinfojoinid = joininfo->otherrels;
|
||||
}
|
||||
cg_list = nconc(cg_list, clausegroups);
|
||||
}
|
||||
@@ -1306,8 +1300,7 @@ index_innerjoin(Query *root, RelOptInfo * rel, List *clausegroup_list,
|
||||
|
||||
pathnode->path.joinid = ((RestrictInfo *) lfirst(clausegroup))->cinfojoinid;
|
||||
|
||||
pathnode->path.path_cost =
|
||||
cost_index((Oid) lfirsti(index->relids),
|
||||
pathnode->path.path_cost = cost_index((Oid) lfirsti(index->relids),
|
||||
(int) temp_pages,
|
||||
temp_selec,
|
||||
rel->pages,
|
||||
@@ -1320,16 +1313,14 @@ index_innerjoin(Query *root, RelOptInfo * rel, List *clausegroup_list,
|
||||
* copy restrictinfo list into path for expensive function
|
||||
* processing -- JMH, 7/7/92
|
||||
*/
|
||||
pathnode->path.loc_restrictinfo =
|
||||
set_difference(copyObject((Node *) rel->restrictinfo),
|
||||
pathnode->path.loc_restrictinfo = set_difference(copyObject((Node *) rel->restrictinfo),
|
||||
clausegroup);
|
||||
|
||||
#if 0 /* fix xfunc */
|
||||
/* add in cost for expensive functions! -- JMH, 7/7/92 */
|
||||
if (XfuncMode != XFUNC_OFF)
|
||||
{
|
||||
((Path *) pathnode)->path_cost +=
|
||||
xfunc_get_path_cost((Path *) pathnode);
|
||||
((Path *) pathnode)->path_cost += xfunc_get_path_cost((Path *) pathnode);
|
||||
}
|
||||
#endif
|
||||
cg_list = lappend(cg_list, pathnode);
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/joinpath.c,v 1.11 1999/02/03 20:15:33 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/joinpath.c,v 1.12 1999/02/03 21:16:27 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -96,15 +96,13 @@ find_all_join_paths(Query *root, List *joinrels)
|
||||
outerrel->relids);
|
||||
if (_enable_mergejoin_)
|
||||
{
|
||||
mergeinfo_list =
|
||||
group_clauses_by_order(joinrel->restrictinfo,
|
||||
mergeinfo_list = group_clauses_by_order(joinrel->restrictinfo,
|
||||
lfirsti(innerrel->relids));
|
||||
}
|
||||
|
||||
if (_enable_hashjoin_)
|
||||
{
|
||||
hashinfo_list =
|
||||
group_clauses_by_hashop(joinrel->restrictinfo,
|
||||
hashinfo_list = group_clauses_by_hashop(joinrel->restrictinfo,
|
||||
lfirsti(innerrel->relids));
|
||||
}
|
||||
|
||||
@@ -123,8 +121,7 @@ find_all_join_paths(Query *root, List *joinrels)
|
||||
* explicitly sorted. This may include either nestloops and
|
||||
* mergejoins where the outer path is already ordered.
|
||||
*/
|
||||
pathlist =
|
||||
add_pathlist(joinrel, pathlist,
|
||||
pathlist = add_pathlist(joinrel, pathlist,
|
||||
match_unsorted_outer(joinrel,
|
||||
outerrel,
|
||||
innerrel,
|
||||
@@ -139,8 +136,7 @@ find_all_join_paths(Query *root, List *joinrels)
|
||||
* the actual nestloop nodes were constructed in
|
||||
* (match-unsorted-outer).
|
||||
*/
|
||||
pathlist =
|
||||
add_pathlist(joinrel, pathlist,
|
||||
pathlist = add_pathlist(joinrel, pathlist,
|
||||
match_unsorted_inner(joinrel, outerrel,
|
||||
innerrel,
|
||||
innerrel->pathlist,
|
||||
@@ -151,8 +147,7 @@ find_all_join_paths(Query *root, List *joinrels)
|
||||
* hashed before being joined.
|
||||
*/
|
||||
|
||||
pathlist =
|
||||
add_pathlist(joinrel, pathlist,
|
||||
pathlist = add_pathlist(joinrel, pathlist,
|
||||
hash_inner_and_outer(joinrel, outerrel,
|
||||
innerrel, hashinfo_list));
|
||||
|
||||
@@ -251,22 +246,18 @@ sort_inner_and_outer(RelOptInfo * joinrel,
|
||||
{
|
||||
xmergeinfo = (MInfo *) lfirst(i);
|
||||
|
||||
outerkeys =
|
||||
extract_path_keys(xmergeinfo->jmethod.jmkeys,
|
||||
outerkeys = extract_path_keys(xmergeinfo->jmethod.jmkeys,
|
||||
outerrel->targetlist,
|
||||
OUTER);
|
||||
|
||||
innerkeys =
|
||||
extract_path_keys(xmergeinfo->jmethod.jmkeys,
|
||||
innerkeys = extract_path_keys(xmergeinfo->jmethod.jmkeys,
|
||||
innerrel->targetlist,
|
||||
INNER);
|
||||
|
||||
merge_pathkeys =
|
||||
new_join_pathkeys(outerkeys, joinrel->targetlist,
|
||||
merge_pathkeys = new_join_pathkeys(outerkeys, joinrel->targetlist,
|
||||
xmergeinfo->jmethod.clauses);
|
||||
|
||||
temp_node =
|
||||
create_mergejoin_path(joinrel,
|
||||
temp_node = create_mergejoin_path(joinrel,
|
||||
outerrel->size,
|
||||
innerrel->size,
|
||||
outerrel->width,
|
||||
@@ -342,8 +333,7 @@ match_unsorted_outer(RelOptInfo * joinrel,
|
||||
|
||||
if (outerpath_ordering)
|
||||
{
|
||||
xmergeinfo =
|
||||
match_order_mergeinfo(outerpath_ordering,
|
||||
xmergeinfo = match_order_mergeinfo(outerpath_ordering,
|
||||
mergeinfo_list);
|
||||
}
|
||||
|
||||
@@ -355,14 +345,12 @@ match_unsorted_outer(RelOptInfo * joinrel,
|
||||
List *keys = xmergeinfo->jmethod.jmkeys;
|
||||
List *clauses = xmergeinfo->jmethod.clauses;
|
||||
|
||||
matchedJoinKeys =
|
||||
match_pathkeys_joinkeys(outerpath->keys,
|
||||
matchedJoinKeys = match_pathkeys_joinkeys(outerpath->keys,
|
||||
keys,
|
||||
clauses,
|
||||
OUTER,
|
||||
&matchedJoinClauses);
|
||||
merge_pathkeys =
|
||||
new_join_pathkeys(outerpath->keys,
|
||||
merge_pathkeys = new_join_pathkeys(outerpath->keys,
|
||||
joinrel->targetlist, clauses);
|
||||
}
|
||||
else
|
||||
@@ -385,14 +373,12 @@ match_unsorted_outer(RelOptInfo * joinrel,
|
||||
{
|
||||
bool path_is_cheaper_than_sort;
|
||||
List *varkeys = NIL;
|
||||
Path *mergeinnerpath =
|
||||
match_paths_joinkeys(matchedJoinKeys,
|
||||
Path *mergeinnerpath = match_paths_joinkeys(matchedJoinKeys,
|
||||
outerpath_ordering,
|
||||
innerrel->pathlist,
|
||||
INNER);
|
||||
|
||||
path_is_cheaper_than_sort =
|
||||
(bool) (mergeinnerpath &&
|
||||
path_is_cheaper_than_sort = (bool) (mergeinnerpath &&
|
||||
(mergeinnerpath->path_cost <
|
||||
(cheapest_inner->path_cost +
|
||||
cost_sort(matchedJoinKeys,
|
||||
@@ -401,8 +387,7 @@ match_unsorted_outer(RelOptInfo * joinrel,
|
||||
false))));
|
||||
if (!path_is_cheaper_than_sort)
|
||||
{
|
||||
varkeys =
|
||||
extract_path_keys(matchedJoinKeys,
|
||||
varkeys = extract_path_keys(matchedJoinKeys,
|
||||
innerrel->targetlist,
|
||||
INNER);
|
||||
}
|
||||
@@ -419,8 +404,7 @@ match_unsorted_outer(RelOptInfo * joinrel,
|
||||
else
|
||||
mergeinnerpath = cheapest_inner;
|
||||
|
||||
temp_node =
|
||||
lcons(create_mergejoin_path(joinrel,
|
||||
temp_node = lcons(create_mergejoin_path(joinrel,
|
||||
outerrel->size,
|
||||
innerrel->size,
|
||||
outerrel->width,
|
||||
@@ -492,8 +476,7 @@ match_unsorted_inner(RelOptInfo * joinrel,
|
||||
|
||||
if (innerpath_ordering)
|
||||
{
|
||||
xmergeinfo =
|
||||
match_order_mergeinfo(innerpath_ordering,
|
||||
xmergeinfo = match_order_mergeinfo(innerpath_ordering,
|
||||
mergeinfo_list);
|
||||
}
|
||||
|
||||
@@ -505,8 +488,7 @@ match_unsorted_inner(RelOptInfo * joinrel,
|
||||
List *keys = xmergeinfo->jmethod.jmkeys;
|
||||
List *cls = xmergeinfo->jmethod.clauses;
|
||||
|
||||
matchedJoinKeys =
|
||||
match_pathkeys_joinkeys(innerpath->keys,
|
||||
matchedJoinKeys = match_pathkeys_joinkeys(innerpath->keys,
|
||||
keys,
|
||||
cls,
|
||||
INNER,
|
||||
@@ -528,17 +510,14 @@ match_unsorted_inner(RelOptInfo * joinrel,
|
||||
|
||||
if (temp2)
|
||||
{
|
||||
List *outerkeys =
|
||||
extract_path_keys(matchedJoinKeys,
|
||||
List *outerkeys = extract_path_keys(matchedJoinKeys,
|
||||
outerrel->targetlist,
|
||||
OUTER);
|
||||
List *merge_pathkeys =
|
||||
new_join_pathkeys(outerkeys,
|
||||
List *merge_pathkeys = new_join_pathkeys(outerkeys,
|
||||
joinrel->targetlist,
|
||||
clauses);
|
||||
|
||||
temp_node =
|
||||
lcons(create_mergejoin_path(joinrel,
|
||||
temp_node = lcons(create_mergejoin_path(joinrel,
|
||||
outerrel->size,
|
||||
innerrel->size,
|
||||
outerrel->width,
|
||||
@@ -611,16 +590,13 @@ hash_inner_and_outer(RelOptInfo * joinrel,
|
||||
foreach(i, hashinfo_list)
|
||||
{
|
||||
xhashinfo = (HInfo *) lfirst(i);
|
||||
outerkeys =
|
||||
extract_path_keys(((JoinMethod *) xhashinfo)->jmkeys,
|
||||
outerkeys = extract_path_keys(((JoinMethod *) xhashinfo)->jmkeys,
|
||||
outerrel->targetlist,
|
||||
OUTER);
|
||||
innerkeys =
|
||||
extract_path_keys(((JoinMethod *) xhashinfo)->jmkeys,
|
||||
innerkeys = extract_path_keys(((JoinMethod *) xhashinfo)->jmkeys,
|
||||
innerrel->targetlist,
|
||||
INNER);
|
||||
hash_pathkeys =
|
||||
new_join_pathkeys(outerkeys,
|
||||
hash_pathkeys = new_join_pathkeys(outerkeys,
|
||||
joinrel->targetlist,
|
||||
((JoinMethod *) xhashinfo)->clauses);
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/joinrels.c,v 1.16 1999/02/03 20:15:33 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/joinrels.c,v 1.17 1999/02/03 21:16:27 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -203,11 +203,9 @@ init_join_rel(RelOptInfo * outer_rel, RelOptInfo * inner_rel, JoinInfo * joininf
|
||||
* of the outer and inner join relations and then merging the results
|
||||
* together.
|
||||
*/
|
||||
new_outer_tlist =
|
||||
new_join_tlist(outer_rel->targetlist, /* XXX 1-based attnos */
|
||||
new_outer_tlist = new_join_tlist(outer_rel->targetlist, /* XXX 1-based attnos */
|
||||
inner_rel->relids, 1);
|
||||
new_inner_tlist =
|
||||
new_join_tlist(inner_rel->targetlist, /* XXX 1-based attnos */
|
||||
new_inner_tlist = new_join_tlist(inner_rel->targetlist, /* XXX 1-based attnos */
|
||||
outer_rel->relids,
|
||||
length(new_outer_tlist) + 1);
|
||||
|
||||
@@ -243,8 +241,7 @@ init_join_rel(RelOptInfo * outer_rel, RelOptInfo * inner_rel, JoinInfo * joininf
|
||||
joininfo->inactive = true;
|
||||
}
|
||||
|
||||
joinrel_joininfo_list =
|
||||
new_joininfo_list(append(outer_rel->joininfo, inner_rel->joininfo),
|
||||
joinrel_joininfo_list = new_joininfo_list(append(outer_rel->joininfo, inner_rel->joininfo),
|
||||
intAppend(outer_rel->relids, inner_rel->relids));
|
||||
|
||||
joinrel->joininfo = joinrel_joininfo_list;
|
||||
@@ -291,8 +288,7 @@ new_join_tlist(List *tlist,
|
||||
if (in_final_tlist)
|
||||
{
|
||||
resdomno += 1;
|
||||
temp_node =
|
||||
lcons(create_tl_element(get_expr(xtl),
|
||||
temp_node = lcons(create_tl_element(get_expr(xtl),
|
||||
resdomno),
|
||||
NIL);
|
||||
t_list = nconc(t_list, temp_node);
|
||||
@@ -346,8 +342,7 @@ new_joininfo_list(List *joininfo_list, List *join_relids)
|
||||
current_joininfo_list);
|
||||
if (other_joininfo)
|
||||
{
|
||||
other_joininfo->jinfo_restrictinfo =
|
||||
(List *) LispUnion(joininfo->jinfo_restrictinfo,
|
||||
other_joininfo->jinfo_restrictinfo = (List *) LispUnion(joininfo->jinfo_restrictinfo,
|
||||
other_joininfo->jinfo_restrictinfo);
|
||||
}
|
||||
else
|
||||
@@ -425,8 +420,7 @@ add_new_joininfos(Query *root, List *joinrels, List *outerrels)
|
||||
new_joininfo->mergejoinable = mergejoinable;
|
||||
new_joininfo->hashjoinable = hashjoinable;
|
||||
new_joininfo->inactive = false;
|
||||
rel->joininfo =
|
||||
lappend(rel->joininfo, new_joininfo);
|
||||
rel->joininfo = lappend(rel->joininfo, new_joininfo);
|
||||
|
||||
foreach(xsuper_rel, super_rels)
|
||||
{
|
||||
@@ -435,14 +429,12 @@ add_new_joininfos(Query *root, List *joinrels, List *outerrels)
|
||||
if (nonoverlap_rels(super_rel, joinrel))
|
||||
{
|
||||
List *new_relids = super_rel->relids;
|
||||
JoinInfo *other_joininfo =
|
||||
joininfo_member(new_relids,
|
||||
JoinInfo *other_joininfo = joininfo_member(new_relids,
|
||||
joinrel->joininfo);
|
||||
|
||||
if (other_joininfo)
|
||||
{
|
||||
other_joininfo->jinfo_restrictinfo =
|
||||
(List *) LispUnion(restrict_info,
|
||||
other_joininfo->jinfo_restrictinfo = (List *) LispUnion(restrict_info,
|
||||
other_joininfo->jinfo_restrictinfo);
|
||||
}
|
||||
else
|
||||
@@ -454,8 +446,7 @@ add_new_joininfos(Query *root, List *joinrels, List *outerrels)
|
||||
new_joininfo->mergejoinable = mergejoinable;
|
||||
new_joininfo->hashjoinable = hashjoinable;
|
||||
new_joininfo->inactive = false;
|
||||
joinrel->joininfo =
|
||||
lappend(joinrel->joininfo,
|
||||
joinrel->joininfo = lappend(joinrel->joininfo,
|
||||
new_joininfo);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/joinutils.c,v 1.8 1998/09/01 04:29:38 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/joinutils.c,v 1.9 1999/02/03 21:16:27 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -85,8 +85,7 @@ match_pathkeys_joinkeys(List *pathkeys,
|
||||
foreach(i, pathkeys)
|
||||
{
|
||||
pathkey = lfirst(i);
|
||||
matched_joinkey_index =
|
||||
match_pathkey_joinkeys(pathkey, joinkeys, which_subkey);
|
||||
matched_joinkey_index = match_pathkey_joinkeys(pathkey, joinkeys, which_subkey);
|
||||
|
||||
if (matched_joinkey_index != -1)
|
||||
{
|
||||
@@ -287,8 +286,7 @@ extract_path_keys(List *joinkeys,
|
||||
if (p != NIL)
|
||||
continue; /* key already in pathkeys */
|
||||
|
||||
pathkeys =
|
||||
lappend(pathkeys, lcons(key, NIL));
|
||||
pathkeys = lappend(pathkeys, lcons(key, NIL));
|
||||
}
|
||||
return pathkeys;
|
||||
}
|
||||
@@ -371,8 +369,7 @@ new_join_pathkey(List *subkeys,
|
||||
subkey = (Var *) lfirst(i);
|
||||
if (subkey == NULL)
|
||||
break; /* XXX something is wrong */
|
||||
matched_subkeys =
|
||||
new_matching_subkeys(subkey, considered_subkeys,
|
||||
matched_subkeys = new_matching_subkeys(subkey, considered_subkeys,
|
||||
join_rel_tlist, joinclauses);
|
||||
tlist_key = matching_tlvar(subkey, join_rel_tlist);
|
||||
newly_considered_subkeys = NIL;
|
||||
@@ -386,8 +383,7 @@ new_join_pathkey(List *subkeys,
|
||||
else
|
||||
newly_considered_subkeys = matched_subkeys;
|
||||
|
||||
considered_subkeys =
|
||||
append(considered_subkeys, newly_considered_subkeys);
|
||||
considered_subkeys = append(considered_subkeys, newly_considered_subkeys);
|
||||
|
||||
t_list = nconc(t_list, newly_considered_subkeys);
|
||||
}
|
||||
@@ -426,8 +422,7 @@ new_matching_subkeys(Var *subkey,
|
||||
foreach(i, joinclauses)
|
||||
{
|
||||
joinclause = lfirst(i);
|
||||
tlist_other_var =
|
||||
matching_tlvar(other_join_clause_var(subkey, joinclause),
|
||||
tlist_other_var = matching_tlvar(other_join_clause_var(subkey, joinclause),
|
||||
join_rel_tlist);
|
||||
|
||||
if (tlist_other_var &&
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/mergeutils.c,v 1.10 1999/02/03 20:15:33 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/mergeutils.c,v 1.11 1999/02/03 21:16:27 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -84,11 +84,9 @@ group_clauses_by_order(List *restrictinfo_list,
|
||||
mergeinfo_list);
|
||||
}
|
||||
|
||||
((JoinMethod *) xmergeinfo)->clauses =
|
||||
lcons(clause,
|
||||
((JoinMethod *) xmergeinfo)->clauses = lcons(clause,
|
||||
((JoinMethod *) xmergeinfo)->clauses);
|
||||
((JoinMethod *) xmergeinfo)->jmkeys =
|
||||
lcons(keys,
|
||||
((JoinMethod *) xmergeinfo)->jmkeys = lcons(keys,
|
||||
((JoinMethod *) xmergeinfo)->jmkeys);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/orindxpath.c,v 1.13 1999/02/03 20:15:33 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/orindxpath.c,v 1.14 1999/02/03 21:16:28 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -121,16 +121,14 @@ create_or_index_paths(Query *root,
|
||||
* copy restrictinfo list into path for expensive function
|
||||
* processing -- JMH, 7/7/92
|
||||
*/
|
||||
pathnode->path.loc_restrictinfo =
|
||||
set_difference(copyObject((Node *) rel->restrictinfo),
|
||||
pathnode->path.loc_restrictinfo = set_difference(copyObject((Node *) rel->restrictinfo),
|
||||
lcons(clausenode, NIL));
|
||||
|
||||
#if 0 /* fix xfunc */
|
||||
/* add in cost for expensive functions! -- JMH, 7/7/92 */
|
||||
if (XfuncMode != XFUNC_OFF)
|
||||
{
|
||||
((Path *) pathnode)->path_cost +=
|
||||
xfunc_get_path_cost((Path) pathnode);
|
||||
((Path *) pathnode)->path_cost += xfunc_get_path_cost((Path) pathnode);
|
||||
}
|
||||
#endif
|
||||
clausenode->selectivity = (Cost) floatVal(selecs);
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/predmig.c,v 1.14 1999/02/03 20:15:34 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/predmig.c,v 1.15 1999/02/03 21:16:28 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -256,13 +256,11 @@ xfunc_llel_chains(Stream root, Stream bottom)
|
||||
* i.e. it would be lower than the attributes it references.
|
||||
*/
|
||||
Assert(xfunc_num_relids(pathstream) > xfunc_num_relids(tmpstream));
|
||||
progress =
|
||||
xfunc_prdmig_pullup(origstream, tmpstream,
|
||||
progress = xfunc_prdmig_pullup(origstream, tmpstream,
|
||||
(JoinPath) get_pathptr(pathstream));
|
||||
}
|
||||
if (get_downstream(tmpstream))
|
||||
pathstream =
|
||||
(Stream) xfunc_get_downjoin((Stream) get_downstream(tmpstream));
|
||||
pathstream = (Stream) xfunc_get_downjoin((Stream) get_downstream(tmpstream));
|
||||
}
|
||||
|
||||
/* free up origstream */
|
||||
@@ -526,8 +524,7 @@ xfunc_add_clauses(Stream current)
|
||||
/* first add in the local clauses */
|
||||
foreach(temp, get_loc_restrictinfo((Path) get_pathptr(current)))
|
||||
{
|
||||
topnode =
|
||||
xfunc_streaminsert((RestrictInfo) lfirst(temp), topnode,
|
||||
topnode = xfunc_streaminsert((RestrictInfo) lfirst(temp), topnode,
|
||||
XFUNC_LOCPRD);
|
||||
}
|
||||
|
||||
@@ -538,8 +535,7 @@ xfunc_add_clauses(Stream current)
|
||||
foreach(temp, get_pathrestrictinfo((JoinPath) get_pathptr(current)))
|
||||
{
|
||||
if (!equal(get_clause((RestrictInfo) lfirst(temp)), primjoin))
|
||||
topnode =
|
||||
xfunc_streaminsert((RestrictInfo) lfirst(temp), topnode,
|
||||
topnode = xfunc_streaminsert((RestrictInfo) lfirst(temp), topnode,
|
||||
XFUNC_JOINPRD);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/xfunc.c,v 1.23 1999/02/03 20:15:34 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/xfunc.c,v 1.24 1999/02/03 21:16:29 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -80,8 +80,7 @@ xfunc_trypullup(RelOptInfo rel)
|
||||
for (ever)
|
||||
{
|
||||
/* No, the following should NOT be '==' !! */
|
||||
if (clausetype =
|
||||
xfunc_shouldpull((Path) get_innerjoinpath(curpath),
|
||||
if (clausetype = xfunc_shouldpull((Path) get_innerjoinpath(curpath),
|
||||
curpath, INNER, &maxcinfo))
|
||||
{
|
||||
|
||||
@@ -96,8 +95,7 @@ xfunc_trypullup(RelOptInfo rel)
|
||||
{
|
||||
|
||||
/* No, the following should NOT be '==' !! */
|
||||
if (clausetype =
|
||||
xfunc_shouldpull((Path) get_outerjoinpath(curpath),
|
||||
if (clausetype = xfunc_shouldpull((Path) get_outerjoinpath(curpath),
|
||||
curpath, OUTER, &maxcinfo))
|
||||
{
|
||||
|
||||
@@ -644,8 +642,7 @@ xfunc_width(LispValue clause)
|
||||
{
|
||||
/* Param node projects a complex type */
|
||||
Assert(length(get_param_tlist((Param) clause)) == 1); /* sanity */
|
||||
retval =
|
||||
xfunc_width((LispValue)
|
||||
retval = xfunc_width((LispValue)
|
||||
get_expr(lfirst(get_param_tlist((Param) clause))));
|
||||
}
|
||||
else
|
||||
@@ -696,8 +693,7 @@ xfunc_width(LispValue clause)
|
||||
* the projected attribute
|
||||
*/
|
||||
Assert(length(get_func_tlist(func)) == 1); /* sanity */
|
||||
retval =
|
||||
xfunc_width((LispValue)
|
||||
retval = xfunc_width((LispValue)
|
||||
get_expr(lfirst(get_func_tlist(func))));
|
||||
goto exit;
|
||||
}
|
||||
@@ -774,8 +770,7 @@ xfunc_card_product(Query *queryInfo, Relid relids)
|
||||
foreach(cinfonode, get_restrictinfo(currel))
|
||||
{
|
||||
if (!xfunc_expense(queryInfo, get_clause((RestrictInfo) lfirst(cinfonode))))
|
||||
tuples *=
|
||||
compute_clause_selec(queryInfo,
|
||||
tuples *= compute_clause_selec(queryInfo,
|
||||
get_clause((RestrictInfo) lfirst(cinfonode)),
|
||||
LispNil);
|
||||
}
|
||||
@@ -1240,8 +1235,7 @@ xfunc_disjunct_sort(LispValue clause_list)
|
||||
|
||||
foreach(temp, clause_list)
|
||||
if (or_clause(lfirst(temp)))
|
||||
lnext(lfirst(temp)) =
|
||||
lisp_qsort(lnext(lfirst(temp)), xfunc_disjunct_compare);
|
||||
lnext(lfirst(temp)) = lisp_qsort(lnext(lfirst(temp)), xfunc_disjunct_compare);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user