Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
82682ff3
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
82682ff3
编写于
2月 15, 1999
作者:
B
Bruce Momjian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
optimizer rename
上级
ba2883b2
变更
4
显示空白变更内容
内联
并排
Showing
4 changed file
with
16 addition
and
15 deletion
+16
-15
src/backend/optimizer/path/allpaths.c
src/backend/optimizer/path/allpaths.c
+4
-4
src/backend/optimizer/path/joinrels.c
src/backend/optimizer/path/joinrels.c
+4
-3
src/backend/optimizer/path/prune.c
src/backend/optimizer/path/prune.c
+6
-6
src/include/optimizer/paths.h
src/include/optimizer/paths.h
+2
-2
未找到文件。
src/backend/optimizer/path/allpaths.c
浏览文件 @
82682ff3
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/allpaths.c,v 1.3
5 1999/02/15 03:22:03
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/allpaths.c,v 1.3
6 1999/02/15 03:59:27
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -211,7 +211,7 @@ make_one_rel_by_joins(Query *root, List *outer_rels, int levels_needed)
* involves the join relation to the joininfo list of the
* other relation
*/
add_
new
_joininfos
(
root
,
joined_rels
,
outer_rels
);
add_
rel_to_rel
_joininfos
(
root
,
joined_rels
,
outer_rels
);
}
#endif
...
...
@@ -236,12 +236,12 @@ make_one_rel_by_joins(Query *root, List *outer_rels, int levels_needed)
* prune rels that have been completely incorporated into new
* join rels
*/
outer_rels
=
prune_oldrels
(
outer_rels
);
outer_rels
=
del_rels_all_bushy_inactive
(
outer_rels
);
/*
* merge join rels if then contain the same list of base rels
*/
outer_rels
=
merge_
joinrel
s
(
joined_rels
,
outer_rels
);
outer_rels
=
merge_
rels_with_same_relid
s
(
joined_rels
,
outer_rels
);
root
->
join_rel_list
=
outer_rels
;
}
else
...
...
src/backend/optimizer/path/joinrels.c
浏览文件 @
82682ff3
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/joinrels.c,v 1.2
3 1999/02/15 03:22:05
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/joinrels.c,v 1.2
4 1999/02/15 03:59:27
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -373,7 +373,7 @@ new_joininfo_list(List *joininfo_list, List *join_relids)
}
/*
* add_
new
_joininfos
* add_
rel_to_rel
_joininfos
* For each new join relation, create new joininfos that
* use the join relation as inner relation, and add
* the new joininfos to those rel nodes that still
...
...
@@ -384,7 +384,7 @@ new_joininfo_list(List *joininfo_list, List *join_relids)
* Modifies the joininfo field of appropriate rel nodes.
*/
void
add_
new
_joininfos
(
Query
*
root
,
List
*
joinrels
,
List
*
outerrels
)
add_
rel_to_rel
_joininfos
(
Query
*
root
,
List
*
joinrels
,
List
*
outerrels
)
{
List
*
xjoinrel
=
NIL
;
List
*
xrelid
=
NIL
;
...
...
@@ -462,6 +462,7 @@ add_new_joininfos(Query *root, List *joinrels, List *outerrels)
}
}
}
foreach
(
xrel
,
outerrels
)
{
RelOptInfo
*
rel
=
(
RelOptInfo
*
)
lfirst
(
xrel
);
...
...
src/backend/optimizer/path/prune.c
浏览文件 @
82682ff3
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/prune.c,v 1.3
3 1999/02/15 03:22:06
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/optimizer/path/Attic/prune.c,v 1.3
4 1999/02/15 03:59:27
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -108,7 +108,7 @@ rels_set_cheapest(List *rel_list)
#ifdef NOT_USED
/*
* merge_
joinrel
s
* merge_
rels_with_same_relid
s
* Given two lists of rel nodes that are already
* pruned, merge them into one pruned rel node list
*
...
...
@@ -118,7 +118,7 @@ rels_set_cheapest(List *rel_list)
* Returns one pruned rel node list
*/
List
*
merge_
joinrel
s
(
List
*
rel_list1
,
List
*
rel_list2
)
merge_
rels_with_same_relid
s
(
List
*
rel_list1
,
List
*
rel_list2
)
{
List
*
xrel
=
NIL
;
...
...
@@ -132,7 +132,7 @@ merge_joinrels(List *rel_list1, List *rel_list2)
}
/*
*
prune_oldrels
*
del_rels_all_bushy_inactive
* If all the joininfo's in a rel node are bushy_inactive,
* that means that this node has been joined into
* other nodes in all possible ways, therefore
...
...
@@ -144,7 +144,7 @@ merge_joinrels(List *rel_list1, List *rel_list2)
* Returns a new list of rel nodes
*/
List
*
prune_oldrels
(
List
*
old_rels
)
del_rels_all_bushy_inactive
(
List
*
old_rels
)
{
RelOptInfo
*
rel
;
List
*
joininfo_list
,
...
...
src/include/optimizer/paths.h
浏览文件 @
82682ff3
...
...
@@ -7,7 +7,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: paths.h,v 1.1
7 1999/02/15 03:22:31
momjian Exp $
* $Id: paths.h,v 1.1
8 1999/02/15 03:59:28
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -78,7 +78,7 @@ extern MergeInfo *match_order_mergeinfo(PathOrder *ordering,
* routines to determine which relations to join
*/
extern
List
*
make_rels_by_joins
(
Query
*
root
,
List
*
outer_rels
);
extern
void
add_
new
_joininfos
(
Query
*
root
,
List
*
joinrels
,
List
*
outerrels
);
extern
void
add_
rel_to_rel
_joininfos
(
Query
*
root
,
List
*
joinrels
,
List
*
outerrels
);
extern
List
*
make_rels_by_clause_joins
(
Query
*
root
,
RelOptInfo
*
outer_rel
,
List
*
joininfo_list
,
List
*
only_relids
);
extern
List
*
make_rels_by_clauseless_joins
(
RelOptInfo
*
outer_rel
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录