Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit5d7923d

Browse files
committed
Subselects...
1 parent6fcf2d7 commit5d7923d

File tree

11 files changed

+63
-10
lines changed

11 files changed

+63
-10
lines changed

‎src/include/executor/executor.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*
77
* Copyright (c) 1994, Regents of the University of California
88
*
9-
* $Id: executor.h,v 1.19 1998/02/10 04:02:19 momjian Exp $
9+
* $Id: executor.h,v 1.20 1998/02/13 03:43:33 vadim Exp $
1010
*
1111
*-------------------------------------------------------------------------
1212
*/
@@ -108,6 +108,7 @@ extern void ExecInitOuterTupleSlot(EState *estate, HashJoinState *hashstate);
108108

109109
externTupleDescExecGetTupType(Plan*node);
110110
externTupleDescExecTypeFromTL(List*targetList);
111+
externvoidSetChangedParamList (Plan*node,List*newchg);
111112

112113
/*
113114
* prototypes from functions in execTuples.c

‎src/include/executor/nodeAgg.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*
77
* Copyright (c) 1994, Regents of the University of California
88
*
9-
* $Id: nodeAgg.h,v 1.6 1997/11/26 01:12:40 momjian Exp $
9+
* $Id: nodeAgg.h,v 1.7 1998/02/13 03:43:34 vadim Exp $
1010
*
1111
*-------------------------------------------------------------------------
1212
*/
@@ -21,5 +21,6 @@ extern TupleTableSlot *ExecAgg(Agg *node);
2121
externboolExecInitAgg(Agg*node,EState*estate,Plan*parent);
2222
externintExecCountSlotsAgg(Agg*node);
2323
externvoidExecEndAgg(Agg*node);
24+
externvoidExecReScanAgg(Agg*node,ExprContext*exprCtxt,Plan*parent);
2425

2526
#endif/* NODEAGG_H */

‎src/include/executor/nodeHash.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*
77
* Copyright (c) 1994, Regents of the University of California
88
*
9-
* $Id: nodeHash.h,v 1.7 1998/01/24 22:49:01 momjian Exp $
9+
* $Id: nodeHash.h,v 1.8 1998/02/13 03:43:35 vadim Exp $
1010
*
1111
*-------------------------------------------------------------------------
1212
*/
@@ -35,5 +35,6 @@ extern HeapTuple ExecScanHashBucket(HashJoinState *hjstate, HashBucket bucket,
3535
HeapTuplecurtuple,List*hjclauses,
3636
ExprContext*econtext);
3737
externvoidExecHashTableReset(HashJoinTablehashtable,intntuples);
38+
externvoidExecReScanHash(Hash*node,ExprContext*exprCtxt,Plan*parent);
3839

3940
#endif/* NODEHASH_H */

‎src/include/executor/nodeHashjoin.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*
77
* Copyright (c) 1994, Regents of the University of California
88
*
9-
* $Id: nodeHashjoin.h,v 1.7 1998/01/24 22:49:04 momjian Exp $
9+
* $Id: nodeHashjoin.h,v 1.8 1998/02/13 03:43:36 vadim Exp $
1010
*
1111
*-------------------------------------------------------------------------
1212
*/
@@ -23,6 +23,7 @@ extern intExecCountSlotsHashJoin(HashJoin *node);
2323
externvoidExecEndHashJoin(HashJoin*node);
2424
externchar*ExecHashJoinSaveTuple(HeapTupleheapTuple,char*buffer,
2525
Filefile,char*position);
26+
externvoidExecReScanHashJoin(HashJoin*node,ExprContext*exprCtxt,Plan*parent);
2627

2728

2829
#endif/* NODEHASHJOIN_H */

‎src/include/executor/nodeMaterial.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*
77
* Copyright (c) 1994, Regents of the University of California
88
*
9-
* $Id: nodeMaterial.h,v 1.5 1997/11/26 01:12:53 momjian Exp $
9+
* $Id: nodeMaterial.h,v 1.6 1998/02/13 03:43:37 vadim Exp $
1010
*
1111
*-------------------------------------------------------------------------
1212
*/
@@ -21,7 +21,9 @@ extern TupleTableSlot *ExecMaterial(Material *node);
2121
externboolExecInitMaterial(Material*node,EState*estate,Plan*parent);
2222
externintExecCountSlotsMaterial(Material*node);
2323
externvoidExecEndMaterial(Material*node);
24+
externvoidExecMaterialReScan(Material*node,ExprContext*exprCtxt,Plan*parent);
25+
#if0
2426
externListExecMaterialMarkPos(Material*node);
2527
externvoidExecMaterialRestrPos(Material*node);
26-
28+
#endif
2729
#endif/* NODEMATERIAL_H */

‎src/include/executor/nodeNestloop.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*
77
* Copyright (c) 1994, Regents of the University of California
88
*
9-
* $Id: nodeNestloop.h,v 1.5 1997/11/26 01:12:57 momjian Exp $
9+
* $Id: nodeNestloop.h,v 1.6 1998/02/13 03:43:38 vadim Exp $
1010
*
1111
*-------------------------------------------------------------------------
1212
*/
@@ -21,5 +21,6 @@ extern TupleTableSlot *ExecNestLoop(NestLoop *node, Plan *parent);
2121
externboolExecInitNestLoop(NestLoop*node,EState*estate,Plan*parent);
2222
externintExecCountSlotsNestLoop(NestLoop*node);
2323
externvoidExecEndNestLoop(NestLoop*node);
24+
externvoidExecReScanNestLoop(NestLoop*node,ExprContext*exprCtxt,Plan*parent);
2425

2526
#endif/* NODENESTLOOP_H */

‎src/include/executor/nodeResult.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*
77
* Copyright (c) 1994, Regents of the University of California
88
*
9-
* $Id: nodeResult.h,v 1.5 1997/11/26 01:12:58 momjian Exp $
9+
* $Id: nodeResult.h,v 1.6 1998/02/13 03:43:39 vadim Exp $
1010
*
1111
*-------------------------------------------------------------------------
1212
*/
@@ -21,5 +21,6 @@ extern TupleTableSlot *ExecResult(Result *node);
2121
externboolExecInitResult(Result*node,EState*estate,Plan*parent);
2222
externintExecCountSlotsResult(Result*node);
2323
externvoidExecEndResult(Result*node);
24+
externvoidExecReScanResult(Result*node,ExprContext*exprCtxt,Plan*parent);
2425

2526
#endif/* NODERESULT_H */

‎src/include/executor/nodeSubplan.h

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
/*-------------------------------------------------------------------------
2+
*
3+
* nodeSubplan.h--
4+
*
5+
*-------------------------------------------------------------------------
6+
*/
7+
#ifndefNODESUBPLAN_H
8+
#defineNODESUBPLAN_H
9+
10+
#include"executor/tuptable.h"
11+
#include"nodes/execnodes.h"
12+
#include"nodes/plannodes.h"
13+
14+
externDatumExecSubPlan(SubPlan*node,List*pvar,ExprContext*econtext);
15+
externboolExecInitSubPlan(SubPlan*node,EState*estate,Plan*parent);
16+
externvoidExecReScanSetParamPlan (SubPlan*node,Plan*parent);
17+
externvoidExecSetParamPlan (SubPlan*node);
18+
externvoidExecEndSubPlan(SubPlan*node);
19+
20+
#endif/* NODESUBPLAN_H */

‎src/include/optimizer/clauses.h

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*
77
* Copyright (c) 1994, Regents of the University of California
88
*
9-
* $Id: clauses.h,v 1.8 1998/01/24 22:49:39 momjian Exp $
9+
* $Id: clauses.h,v 1.9 1998/02/13 03:46:54 vadim Exp $
1010
*
1111
*-------------------------------------------------------------------------
1212
*/
@@ -48,4 +48,8 @@ extern void get_rels_atts(Node *clause, int *relid1,
4848
AttrNumber*attno1,int*relid2,AttrNumber*attno2);
4949
externvoidCommuteClause(Node*clause);
5050

51+
#defineis_subplan(clause)((Node*) clause != NULL && \
52+
nodeTag((Node*) clause) == T_Expr && \
53+
((Expr *) clause)->opType == SUBPLAN_EXPR)
54+
5155
#endif/* CLAUSES_H */

‎src/include/optimizer/planner.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*
77
* Copyright (c) 1994, Regents of the University of California
88
*
9-
* $Id: planner.h,v 1.7 1997/11/26 01:13:49 momjian Exp $
9+
* $Id: planner.h,v 1.8 1998/02/13 03:46:56 vadim Exp $
1010
*
1111
*-------------------------------------------------------------------------
1212
*/
@@ -21,6 +21,7 @@
2121
#include"parser/parse_node.h"
2222

2323
externPlan*planner(Query*parse);
24+
externPlan*union_planner(Query*parse);
2425
externvoidpg_checkretval(Oidrettype,QueryTreeList*querytree_list);
2526

2627
#endif/* PLANNER_H */

‎src/include/optimizer/subselect.h

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
/*-------------------------------------------------------------------------
2+
*
3+
* subselect.h--
4+
*
5+
*-------------------------------------------------------------------------
6+
*/
7+
#ifndefSUBSELECT_H
8+
#defineSUBSELECT_H
9+
10+
externintPlannerQueryLevel;/* level of current query */
11+
externList*PlannerVarParam;/* correlation Vars to Param mapper */
12+
externList*PlannerParamVar;/* to get Var from Param->paramid */
13+
externList*PlannerInitPlan;/* init subplans for current query */
14+
externintPlannerPlanId;/* to assigne unique ID to subquery plans */
15+
16+
externList*SS_finalize_plan (Plan*plan);
17+
externNode*SS_replace_correlation_vars (Node*expr);
18+
externNode*SS_process_sublinks (Node*expr);
19+
20+
#endif/* SUBSELECT_H */

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp