mirror of
https://github.com/postgres/postgres.git
synced 2025-08-25 20:23:07 +03:00
Phase 2 pgindent run for v12.
Switch to 2.1 version of pg_bsd_indent. This formats multiline function declarations "correctly", that is with additional lines of parameter declarations indented to match where the first line's left parenthesis is. Discussion: https://postgr.es/m/CAEepm=0P3FeTXRcU5B2W3jv3PgRVZ-kGUXLGfd42FFhUROO3ug@mail.gmail.com
This commit is contained in:
@@ -710,58 +710,58 @@ extern void CheckExprStillValid(ExprState *state, ExprContext *econtext);
|
||||
* expression evaluation, reducing code duplication.
|
||||
*/
|
||||
extern void ExecEvalFuncExprFusage(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalFuncExprStrictFusage(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalParamExec(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalParamExtern(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalSQLValueFunction(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalCurrentOfExpr(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalNextValueExpr(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalRowNull(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalRowNotNull(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalArrayExpr(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalArrayCoerce(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalRow(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalMinMax(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalFieldSelect(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalFieldStoreDeForm(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalFieldStoreForm(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern bool ExecEvalSubscriptingRef(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalSubscriptingRefFetch(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalSubscriptingRefOld(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalSubscriptingRefAssign(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalConvertRowtype(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalScalarArrayOp(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalConstraintNotNull(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalConstraintCheck(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalXmlExpr(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalGroupingFunc(ExprState *state, ExprEvalStep *op);
|
||||
extern void ExecEvalSubPlan(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalAlternativeSubPlan(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalWholeRowVar(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalSysVar(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext, TupleTableSlot *slot);
|
||||
ExprContext *econtext, TupleTableSlot *slot);
|
||||
|
||||
extern void ExecAggInitGroup(AggState *aggstate, AggStatePerTrans pertrans, AggStatePerGroup pergroup);
|
||||
extern Datum ExecAggTransReparent(AggState *aggstate, AggStatePerTrans pertrans,
|
||||
Datum newValue, bool newValueIsNull,
|
||||
Datum oldValue, bool oldValueIsNull);
|
||||
Datum newValue, bool newValueIsNull,
|
||||
Datum oldValue, bool oldValueIsNull);
|
||||
extern void ExecEvalAggOrderedTransDatum(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecEvalAggOrderedTransTuple(ExprState *state, ExprEvalStep *op,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
|
||||
#endif /* EXEC_EXPR_H */
|
||||
|
@@ -37,13 +37,13 @@ typedef struct ParallelExecutorInfo
|
||||
} ParallelExecutorInfo;
|
||||
|
||||
extern ParallelExecutorInfo *ExecInitParallelPlan(PlanState *planstate,
|
||||
EState *estate, Bitmapset *sendParam, int nworkers,
|
||||
int64 tuples_needed);
|
||||
EState *estate, Bitmapset *sendParam, int nworkers,
|
||||
int64 tuples_needed);
|
||||
extern void ExecParallelCreateReaders(ParallelExecutorInfo *pei);
|
||||
extern void ExecParallelFinish(ParallelExecutorInfo *pei);
|
||||
extern void ExecParallelCleanup(ParallelExecutorInfo *pei);
|
||||
extern void ExecParallelReinitialize(PlanState *planstate,
|
||||
ParallelExecutorInfo *pei, Bitmapset *sendParam);
|
||||
ParallelExecutorInfo *pei, Bitmapset *sendParam);
|
||||
|
||||
extern void ParallelQueryMain(dsm_segment *seg, shm_toc *toc);
|
||||
|
||||
|
@@ -138,19 +138,19 @@ typedef struct PartitionPruneState
|
||||
} PartitionPruneState;
|
||||
|
||||
extern PartitionTupleRouting *ExecSetupPartitionTupleRouting(EState *estate,
|
||||
ModifyTableState *mtstate,
|
||||
Relation rel);
|
||||
ModifyTableState *mtstate,
|
||||
Relation rel);
|
||||
extern ResultRelInfo *ExecFindPartition(ModifyTableState *mtstate,
|
||||
ResultRelInfo *rootResultRelInfo,
|
||||
PartitionTupleRouting *proute,
|
||||
TupleTableSlot *slot,
|
||||
EState *estate);
|
||||
ResultRelInfo *rootResultRelInfo,
|
||||
PartitionTupleRouting *proute,
|
||||
TupleTableSlot *slot,
|
||||
EState *estate);
|
||||
extern void ExecCleanupTupleRouting(ModifyTableState *mtstate,
|
||||
PartitionTupleRouting *proute);
|
||||
PartitionTupleRouting *proute);
|
||||
extern PartitionPruneState *ExecCreatePartitionPruneState(PlanState *planstate,
|
||||
PartitionPruneInfo *partitionpruneinfo);
|
||||
PartitionPruneInfo *partitionpruneinfo);
|
||||
extern Bitmapset *ExecFindMatchingSubPlans(PartitionPruneState *prunestate);
|
||||
extern Bitmapset *ExecFindInitialMatchingSubPlans(PartitionPruneState *prunestate,
|
||||
int nsubplans);
|
||||
int nsubplans);
|
||||
|
||||
#endif /* EXECPARTITION_H */
|
||||
|
@@ -57,13 +57,13 @@ typedef struct QueryDesc
|
||||
|
||||
/* in pquery.c */
|
||||
extern QueryDesc *CreateQueryDesc(PlannedStmt *plannedstmt,
|
||||
const char *sourceText,
|
||||
Snapshot snapshot,
|
||||
Snapshot crosscheck_snapshot,
|
||||
DestReceiver *dest,
|
||||
ParamListInfo params,
|
||||
QueryEnvironment *queryEnv,
|
||||
int instrument_options);
|
||||
const char *sourceText,
|
||||
Snapshot snapshot,
|
||||
Snapshot crosscheck_snapshot,
|
||||
DestReceiver *dest,
|
||||
ParamListInfo params,
|
||||
QueryEnvironment *queryEnv,
|
||||
int instrument_options);
|
||||
|
||||
extern void FreeQueryDesc(QueryDesc *qdesc);
|
||||
|
||||
|
@@ -100,67 +100,67 @@ extern bool ExecMaterializesOutput(NodeTag plantype);
|
||||
* prototypes from functions in execCurrent.c
|
||||
*/
|
||||
extern bool execCurrentOf(CurrentOfExpr *cexpr,
|
||||
ExprContext *econtext,
|
||||
Oid table_oid,
|
||||
ItemPointer current_tid);
|
||||
ExprContext *econtext,
|
||||
Oid table_oid,
|
||||
ItemPointer current_tid);
|
||||
|
||||
/*
|
||||
* prototypes from functions in execGrouping.c
|
||||
*/
|
||||
extern ExprState *execTuplesMatchPrepare(TupleDesc desc,
|
||||
int numCols,
|
||||
const AttrNumber *keyColIdx,
|
||||
const Oid *eqOperators,
|
||||
const Oid *collations,
|
||||
PlanState *parent);
|
||||
int numCols,
|
||||
const AttrNumber *keyColIdx,
|
||||
const Oid *eqOperators,
|
||||
const Oid *collations,
|
||||
PlanState *parent);
|
||||
extern void execTuplesHashPrepare(int numCols,
|
||||
const Oid *eqOperators,
|
||||
Oid **eqFuncOids,
|
||||
FmgrInfo **hashFunctions);
|
||||
const Oid *eqOperators,
|
||||
Oid **eqFuncOids,
|
||||
FmgrInfo **hashFunctions);
|
||||
extern TupleHashTable BuildTupleHashTable(PlanState *parent,
|
||||
TupleDesc inputDesc,
|
||||
int numCols, AttrNumber *keyColIdx,
|
||||
const Oid *eqfuncoids,
|
||||
FmgrInfo *hashfunctions,
|
||||
Oid *collations,
|
||||
long nbuckets, Size additionalsize,
|
||||
MemoryContext tablecxt,
|
||||
MemoryContext tempcxt, bool use_variable_hash_iv);
|
||||
TupleDesc inputDesc,
|
||||
int numCols, AttrNumber *keyColIdx,
|
||||
const Oid *eqfuncoids,
|
||||
FmgrInfo *hashfunctions,
|
||||
Oid *collations,
|
||||
long nbuckets, Size additionalsize,
|
||||
MemoryContext tablecxt,
|
||||
MemoryContext tempcxt, bool use_variable_hash_iv);
|
||||
extern TupleHashTable BuildTupleHashTableExt(PlanState *parent,
|
||||
TupleDesc inputDesc,
|
||||
int numCols, AttrNumber *keyColIdx,
|
||||
const Oid *eqfuncoids,
|
||||
FmgrInfo *hashfunctions,
|
||||
Oid *collations,
|
||||
long nbuckets, Size additionalsize,
|
||||
MemoryContext metacxt,
|
||||
MemoryContext tablecxt,
|
||||
MemoryContext tempcxt, bool use_variable_hash_iv);
|
||||
TupleDesc inputDesc,
|
||||
int numCols, AttrNumber *keyColIdx,
|
||||
const Oid *eqfuncoids,
|
||||
FmgrInfo *hashfunctions,
|
||||
Oid *collations,
|
||||
long nbuckets, Size additionalsize,
|
||||
MemoryContext metacxt,
|
||||
MemoryContext tablecxt,
|
||||
MemoryContext tempcxt, bool use_variable_hash_iv);
|
||||
extern TupleHashEntry LookupTupleHashEntry(TupleHashTable hashtable,
|
||||
TupleTableSlot *slot,
|
||||
bool *isnew);
|
||||
TupleTableSlot *slot,
|
||||
bool *isnew);
|
||||
extern TupleHashEntry FindTupleHashEntry(TupleHashTable hashtable,
|
||||
TupleTableSlot *slot,
|
||||
ExprState *eqcomp,
|
||||
FmgrInfo *hashfunctions);
|
||||
TupleTableSlot *slot,
|
||||
ExprState *eqcomp,
|
||||
FmgrInfo *hashfunctions);
|
||||
extern void ResetTupleHashTable(TupleHashTable hashtable);
|
||||
|
||||
/*
|
||||
* prototypes from functions in execJunk.c
|
||||
*/
|
||||
extern JunkFilter *ExecInitJunkFilter(List *targetList,
|
||||
TupleTableSlot *slot);
|
||||
TupleTableSlot *slot);
|
||||
extern JunkFilter *ExecInitJunkFilterConversion(List *targetList,
|
||||
TupleDesc cleanTupType,
|
||||
TupleTableSlot *slot);
|
||||
TupleDesc cleanTupType,
|
||||
TupleTableSlot *slot);
|
||||
extern AttrNumber ExecFindJunkAttribute(JunkFilter *junkfilter,
|
||||
const char *attrName);
|
||||
const char *attrName);
|
||||
extern AttrNumber ExecFindJunkAttributeInTlist(List *targetlist,
|
||||
const char *attrName);
|
||||
const char *attrName);
|
||||
extern Datum ExecGetJunkAttribute(TupleTableSlot *slot, AttrNumber attno,
|
||||
bool *isNull);
|
||||
bool *isNull);
|
||||
extern TupleTableSlot *ExecFilterJunk(JunkFilter *junkfilter,
|
||||
TupleTableSlot *slot);
|
||||
TupleTableSlot *slot);
|
||||
|
||||
|
||||
/*
|
||||
@@ -169,9 +169,9 @@ extern TupleTableSlot *ExecFilterJunk(JunkFilter *junkfilter,
|
||||
extern void ExecutorStart(QueryDesc *queryDesc, int eflags);
|
||||
extern void standard_ExecutorStart(QueryDesc *queryDesc, int eflags);
|
||||
extern void ExecutorRun(QueryDesc *queryDesc,
|
||||
ScanDirection direction, uint64 count, bool execute_once);
|
||||
ScanDirection direction, uint64 count, bool execute_once);
|
||||
extern void standard_ExecutorRun(QueryDesc *queryDesc,
|
||||
ScanDirection direction, uint64 count, bool execute_once);
|
||||
ScanDirection direction, uint64 count, bool execute_once);
|
||||
extern void ExecutorFinish(QueryDesc *queryDesc);
|
||||
extern void standard_ExecutorFinish(QueryDesc *queryDesc);
|
||||
extern void ExecutorEnd(QueryDesc *queryDesc);
|
||||
@@ -180,31 +180,31 @@ extern void ExecutorRewind(QueryDesc *queryDesc);
|
||||
extern bool ExecCheckRTPerms(List *rangeTable, bool ereport_on_violation);
|
||||
extern void CheckValidResultRel(ResultRelInfo *resultRelInfo, CmdType operation);
|
||||
extern void InitResultRelInfo(ResultRelInfo *resultRelInfo,
|
||||
Relation resultRelationDesc,
|
||||
Index resultRelationIndex,
|
||||
Relation partition_root,
|
||||
int instrument_options);
|
||||
Relation resultRelationDesc,
|
||||
Index resultRelationIndex,
|
||||
Relation partition_root,
|
||||
int instrument_options);
|
||||
extern ResultRelInfo *ExecGetTriggerResultRel(EState *estate, Oid relid);
|
||||
extern void ExecCleanUpTriggerState(EState *estate);
|
||||
extern void ExecConstraints(ResultRelInfo *resultRelInfo,
|
||||
TupleTableSlot *slot, EState *estate);
|
||||
extern bool ExecPartitionCheck(ResultRelInfo *resultRelInfo,
|
||||
TupleTableSlot *slot, EState *estate, bool emitError);
|
||||
extern void ExecPartitionCheckEmitError(ResultRelInfo *resultRelInfo,
|
||||
TupleTableSlot *slot, EState *estate);
|
||||
extern bool ExecPartitionCheck(ResultRelInfo *resultRelInfo,
|
||||
TupleTableSlot *slot, EState *estate, bool emitError);
|
||||
extern void ExecPartitionCheckEmitError(ResultRelInfo *resultRelInfo,
|
||||
TupleTableSlot *slot, EState *estate);
|
||||
extern void ExecWithCheckOptions(WCOKind kind, ResultRelInfo *resultRelInfo,
|
||||
TupleTableSlot *slot, EState *estate);
|
||||
TupleTableSlot *slot, EState *estate);
|
||||
extern LockTupleMode ExecUpdateLockMode(EState *estate, ResultRelInfo *relinfo);
|
||||
extern ExecRowMark *ExecFindRowMark(EState *estate, Index rti, bool missing_ok);
|
||||
extern ExecAuxRowMark *ExecBuildAuxRowMark(ExecRowMark *erm, List *targetlist);
|
||||
extern TupleTableSlot *EvalPlanQual(EState *estate, EPQState *epqstate,
|
||||
Relation relation, Index rti, TupleTableSlot *testslot);
|
||||
Relation relation, Index rti, TupleTableSlot *testslot);
|
||||
extern void EvalPlanQualInit(EPQState *epqstate, EState *estate,
|
||||
Plan *subplan, List *auxrowmarks, int epqParam);
|
||||
Plan *subplan, List *auxrowmarks, int epqParam);
|
||||
extern void EvalPlanQualSetPlan(EPQState *epqstate,
|
||||
Plan *subplan, List *auxrowmarks);
|
||||
Plan *subplan, List *auxrowmarks);
|
||||
extern TupleTableSlot *EvalPlanQualSlot(EPQState *epqstate,
|
||||
Relation relation, Index rti);
|
||||
Relation relation, Index rti);
|
||||
|
||||
#define EvalPlanQualSetSlot(epqstate, slot) ((epqstate)->origslot = (slot))
|
||||
extern void EvalPlanQualFetchRowMarks(EPQState *epqstate);
|
||||
@@ -249,19 +249,19 @@ extern ExprState *ExecInitQual(List *qual, PlanState *parent);
|
||||
extern ExprState *ExecInitCheck(List *qual, PlanState *parent);
|
||||
extern List *ExecInitExprList(List *nodes, PlanState *parent);
|
||||
extern ExprState *ExecBuildAggTrans(AggState *aggstate, struct AggStatePerPhaseData *phase,
|
||||
bool doSort, bool doHash);
|
||||
bool doSort, bool doHash);
|
||||
extern ExprState *ExecBuildGroupingEqual(TupleDesc ldesc, TupleDesc rdesc,
|
||||
const TupleTableSlotOps *lops, const TupleTableSlotOps *rops,
|
||||
int numCols,
|
||||
const AttrNumber *keyColIdx,
|
||||
const Oid *eqfunctions,
|
||||
const Oid *collations,
|
||||
PlanState *parent);
|
||||
const TupleTableSlotOps *lops, const TupleTableSlotOps *rops,
|
||||
int numCols,
|
||||
const AttrNumber *keyColIdx,
|
||||
const Oid *eqfunctions,
|
||||
const Oid *collations,
|
||||
PlanState *parent);
|
||||
extern ProjectionInfo *ExecBuildProjectionInfo(List *targetList,
|
||||
ExprContext *econtext,
|
||||
TupleTableSlot *slot,
|
||||
PlanState *parent,
|
||||
TupleDesc inputDesc);
|
||||
ExprContext *econtext,
|
||||
TupleTableSlot *slot,
|
||||
PlanState *parent,
|
||||
TupleDesc inputDesc);
|
||||
extern ExprState *ExecPrepareExpr(Expr *node, EState *estate);
|
||||
extern ExprState *ExecPrepareQual(List *qual, EState *estate);
|
||||
extern ExprState *ExecPrepareCheck(List *qual, EState *estate);
|
||||
@@ -404,19 +404,19 @@ extern bool ExecCheck(ExprState *state, ExprContext *context);
|
||||
* prototypes from functions in execSRF.c
|
||||
*/
|
||||
extern SetExprState *ExecInitTableFunctionResult(Expr *expr,
|
||||
ExprContext *econtext, PlanState *parent);
|
||||
ExprContext *econtext, PlanState *parent);
|
||||
extern Tuplestorestate *ExecMakeTableFunctionResult(SetExprState *setexpr,
|
||||
ExprContext *econtext,
|
||||
MemoryContext argContext,
|
||||
TupleDesc expectedDesc,
|
||||
bool randomAccess);
|
||||
ExprContext *econtext,
|
||||
MemoryContext argContext,
|
||||
TupleDesc expectedDesc,
|
||||
bool randomAccess);
|
||||
extern SetExprState *ExecInitFunctionResultSet(Expr *expr,
|
||||
ExprContext *econtext, PlanState *parent);
|
||||
ExprContext *econtext, PlanState *parent);
|
||||
extern Datum ExecMakeFunctionResultSet(SetExprState *fcache,
|
||||
ExprContext *econtext,
|
||||
MemoryContext argContext,
|
||||
bool *isNull,
|
||||
ExprDoneCond *isDone);
|
||||
ExprContext *econtext,
|
||||
MemoryContext argContext,
|
||||
bool *isNull,
|
||||
ExprDoneCond *isDone);
|
||||
|
||||
/*
|
||||
* prototypes from functions in execScan.c
|
||||
@@ -425,7 +425,7 @@ typedef TupleTableSlot *(*ExecScanAccessMtd) (ScanState *node);
|
||||
typedef bool (*ExecScanRecheckMtd) (ScanState *node, TupleTableSlot *slot);
|
||||
|
||||
extern TupleTableSlot *ExecScan(ScanState *node, ExecScanAccessMtd accessMtd,
|
||||
ExecScanRecheckMtd recheckMtd);
|
||||
ExecScanRecheckMtd recheckMtd);
|
||||
extern void ExecAssignScanProjectionInfo(ScanState *node);
|
||||
extern void ExecAssignScanProjectionInfoWithVarno(ScanState *node, Index varno);
|
||||
extern void ExecScanReScan(ScanState *node);
|
||||
@@ -435,17 +435,17 @@ extern void ExecScanReScan(ScanState *node);
|
||||
*/
|
||||
extern void ExecInitResultTypeTL(PlanState *planstate);
|
||||
extern void ExecInitResultSlot(PlanState *planstate,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
extern void ExecInitResultTupleSlotTL(PlanState *planstate,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
extern void ExecInitScanTupleSlot(EState *estate, ScanState *scanstate,
|
||||
TupleDesc tupleDesc,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
TupleDesc tupleDesc,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
extern TupleTableSlot *ExecInitExtraTupleSlot(EState *estate,
|
||||
TupleDesc tupledesc,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
TupleDesc tupledesc,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
extern TupleTableSlot *ExecInitNullTupleSlot(EState *estate, TupleDesc tupType,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
extern TupleDesc ExecTypeFromTL(List *targetList);
|
||||
extern TupleDesc ExecCleanTypeFromTL(List *targetList);
|
||||
extern TupleDesc ExecTypeFromExprList(List *exprList);
|
||||
@@ -459,8 +459,8 @@ typedef struct TupOutputState
|
||||
} TupOutputState;
|
||||
|
||||
extern TupOutputState *begin_tup_output_tupdesc(DestReceiver *dest,
|
||||
TupleDesc tupdesc,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
TupleDesc tupdesc,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
extern void do_tup_output(TupOutputState *tstate, Datum *values, bool *isnull);
|
||||
extern void do_text_output_multiline(TupOutputState *tstate, const char *txt);
|
||||
extern void end_tup_output(TupOutputState *tstate);
|
||||
@@ -516,16 +516,16 @@ extern void ExecAssignExprContext(EState *estate, PlanState *planstate);
|
||||
extern TupleDesc ExecGetResultType(PlanState *planstate);
|
||||
extern TupleTableSlot ExecGetResultSlot(PlanState *planstate);
|
||||
extern const TupleTableSlotOps *ExecGetResultSlotOps(PlanState *planstate,
|
||||
bool *isfixed);
|
||||
bool *isfixed);
|
||||
extern void ExecAssignProjectionInfo(PlanState *planstate,
|
||||
TupleDesc inputDesc);
|
||||
TupleDesc inputDesc);
|
||||
extern void ExecConditionalAssignProjectionInfo(PlanState *planstate,
|
||||
TupleDesc inputDesc, Index varno);
|
||||
TupleDesc inputDesc, Index varno);
|
||||
extern void ExecFreeExprContext(PlanState *planstate);
|
||||
extern void ExecAssignScanType(ScanState *scanstate, TupleDesc tupDesc);
|
||||
extern void ExecCreateScanSlotFromOuterPlan(EState *estate,
|
||||
ScanState *scanstate,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
ScanState *scanstate,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
|
||||
extern bool ExecRelationIsTargetRelation(EState *estate, Index scanrelid);
|
||||
|
||||
@@ -545,16 +545,16 @@ extern Relation ExecGetRangeTableRelation(EState *estate, Index rti);
|
||||
extern int executor_errposition(EState *estate, int location);
|
||||
|
||||
extern void RegisterExprContextCallback(ExprContext *econtext,
|
||||
ExprContextCallbackFunction function,
|
||||
Datum arg);
|
||||
ExprContextCallbackFunction function,
|
||||
Datum arg);
|
||||
extern void UnregisterExprContextCallback(ExprContext *econtext,
|
||||
ExprContextCallbackFunction function,
|
||||
Datum arg);
|
||||
ExprContextCallbackFunction function,
|
||||
Datum arg);
|
||||
|
||||
extern Datum GetAttributeByName(HeapTupleHeader tuple, const char *attname,
|
||||
bool *isNull);
|
||||
bool *isNull);
|
||||
extern Datum GetAttributeByNum(HeapTupleHeader tuple, AttrNumber attrno,
|
||||
bool *isNull);
|
||||
bool *isNull);
|
||||
|
||||
extern int ExecTargetListLength(List *targetlist);
|
||||
extern int ExecCleanTargetListLength(List *targetlist);
|
||||
@@ -569,33 +569,33 @@ extern TupleTableSlot *ExecGetReturningSlot(EState *estate, ResultRelInfo *relIn
|
||||
extern void ExecOpenIndices(ResultRelInfo *resultRelInfo, bool speculative);
|
||||
extern void ExecCloseIndices(ResultRelInfo *resultRelInfo);
|
||||
extern List *ExecInsertIndexTuples(TupleTableSlot *slot, EState *estate, bool noDupErr,
|
||||
bool *specConflict, List *arbiterIndexes);
|
||||
bool *specConflict, List *arbiterIndexes);
|
||||
extern bool ExecCheckIndexConstraints(TupleTableSlot *slot, EState *estate,
|
||||
ItemPointer conflictTid, List *arbiterIndexes);
|
||||
ItemPointer conflictTid, List *arbiterIndexes);
|
||||
extern void check_exclusion_constraint(Relation heap, Relation index,
|
||||
IndexInfo *indexInfo,
|
||||
ItemPointer tupleid,
|
||||
Datum *values, bool *isnull,
|
||||
EState *estate, bool newIndex);
|
||||
IndexInfo *indexInfo,
|
||||
ItemPointer tupleid,
|
||||
Datum *values, bool *isnull,
|
||||
EState *estate, bool newIndex);
|
||||
|
||||
/*
|
||||
* prototypes from functions in execReplication.c
|
||||
*/
|
||||
extern bool RelationFindReplTupleByIndex(Relation rel, Oid idxoid,
|
||||
LockTupleMode lockmode,
|
||||
TupleTableSlot *searchslot,
|
||||
TupleTableSlot *outslot);
|
||||
LockTupleMode lockmode,
|
||||
TupleTableSlot *searchslot,
|
||||
TupleTableSlot *outslot);
|
||||
extern bool RelationFindReplTupleSeq(Relation rel, LockTupleMode lockmode,
|
||||
TupleTableSlot *searchslot, TupleTableSlot *outslot);
|
||||
TupleTableSlot *searchslot, TupleTableSlot *outslot);
|
||||
|
||||
extern void ExecSimpleRelationInsert(EState *estate, TupleTableSlot *slot);
|
||||
extern void ExecSimpleRelationUpdate(EState *estate, EPQState *epqstate,
|
||||
TupleTableSlot *searchslot, TupleTableSlot *slot);
|
||||
TupleTableSlot *searchslot, TupleTableSlot *slot);
|
||||
extern void ExecSimpleRelationDelete(EState *estate, EPQState *epqstate,
|
||||
TupleTableSlot *searchslot);
|
||||
TupleTableSlot *searchslot);
|
||||
extern void CheckCmdReplicaIdentity(Relation rel, CmdType cmd);
|
||||
|
||||
extern void CheckSubscriptionRelkind(char relkind, const char *nspname,
|
||||
const char *relname);
|
||||
const char *relname);
|
||||
|
||||
#endif /* EXECUTOR_H */
|
||||
|
@@ -23,18 +23,18 @@ typedef struct SQLFunctionParseInfo *SQLFunctionParseInfoPtr;
|
||||
extern Datum fmgr_sql(PG_FUNCTION_ARGS);
|
||||
|
||||
extern SQLFunctionParseInfoPtr prepare_sql_fn_parse_info(HeapTuple procedureTuple,
|
||||
Node *call_expr,
|
||||
Oid inputCollation);
|
||||
Node *call_expr,
|
||||
Oid inputCollation);
|
||||
|
||||
extern void sql_fn_parser_setup(struct ParseState *pstate,
|
||||
SQLFunctionParseInfoPtr pinfo);
|
||||
SQLFunctionParseInfoPtr pinfo);
|
||||
|
||||
extern void check_sql_fn_statements(List *queryTreeList);
|
||||
|
||||
extern bool check_sql_fn_retval(Oid func_id, Oid rettype,
|
||||
List *queryTreeList,
|
||||
bool *modifyTargetList,
|
||||
JunkFilter **junkFilter);
|
||||
List *queryTreeList,
|
||||
bool *modifyTargetList,
|
||||
JunkFilter **junkFilter);
|
||||
|
||||
extern DestReceiver *CreateSQLFunctionDestReceiver(void);
|
||||
|
||||
|
@@ -21,12 +21,12 @@ extern BitmapHeapScanState *ExecInitBitmapHeapScan(BitmapHeapScan *node, EState
|
||||
extern void ExecEndBitmapHeapScan(BitmapHeapScanState *node);
|
||||
extern void ExecReScanBitmapHeapScan(BitmapHeapScanState *node);
|
||||
extern void ExecBitmapHeapEstimate(BitmapHeapScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecBitmapHeapInitializeDSM(BitmapHeapScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecBitmapHeapReInitializeDSM(BitmapHeapScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecBitmapHeapInitializeWorker(BitmapHeapScanState *node,
|
||||
ParallelWorkerContext *pwcxt);
|
||||
ParallelWorkerContext *pwcxt);
|
||||
|
||||
#endif /* NODEBITMAPHEAPSCAN_H */
|
||||
|
@@ -19,7 +19,7 @@
|
||||
* General executor code
|
||||
*/
|
||||
extern CustomScanState *ExecInitCustomScan(CustomScan *custom_scan,
|
||||
EState *estate, int eflags);
|
||||
EState *estate, int eflags);
|
||||
extern void ExecEndCustomScan(CustomScanState *node);
|
||||
|
||||
extern void ExecReScanCustomScan(CustomScanState *node);
|
||||
@@ -30,13 +30,13 @@ extern void ExecCustomRestrPos(CustomScanState *node);
|
||||
* Parallel execution support
|
||||
*/
|
||||
extern void ExecCustomScanEstimate(CustomScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecCustomScanInitializeDSM(CustomScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecCustomScanReInitializeDSM(CustomScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecCustomScanInitializeWorker(CustomScanState *node,
|
||||
ParallelWorkerContext *pwcxt);
|
||||
ParallelWorkerContext *pwcxt);
|
||||
extern void ExecShutdownCustomScan(CustomScanState *node);
|
||||
|
||||
#endif /* NODECUSTOM_H */
|
||||
|
@@ -22,13 +22,13 @@ extern void ExecEndForeignScan(ForeignScanState *node);
|
||||
extern void ExecReScanForeignScan(ForeignScanState *node);
|
||||
|
||||
extern void ExecForeignScanEstimate(ForeignScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecForeignScanInitializeDSM(ForeignScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecForeignScanReInitializeDSM(ForeignScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecForeignScanInitializeWorker(ForeignScanState *node,
|
||||
ParallelWorkerContext *pwcxt);
|
||||
ParallelWorkerContext *pwcxt);
|
||||
extern void ExecShutdownForeignScan(ForeignScanState *node);
|
||||
|
||||
#endif /* NODEFOREIGNSCAN_H */
|
||||
|
@@ -17,8 +17,8 @@
|
||||
#include "nodes/execnodes.h"
|
||||
|
||||
extern GatherMergeState *ExecInitGatherMerge(GatherMerge *node,
|
||||
EState *estate,
|
||||
int eflags);
|
||||
EState *estate,
|
||||
int eflags);
|
||||
extern void ExecEndGatherMerge(GatherMergeState *node);
|
||||
extern void ExecReScanGatherMerge(GatherMergeState *node);
|
||||
extern void ExecShutdownGatherMerge(GatherMergeState *node);
|
||||
|
@@ -25,48 +25,48 @@ extern void ExecEndHash(HashState *node);
|
||||
extern void ExecReScanHash(HashState *node);
|
||||
|
||||
extern HashJoinTable ExecHashTableCreate(HashState *state, List *hashOperators, List *hashCollations,
|
||||
bool keepNulls);
|
||||
bool keepNulls);
|
||||
extern void ExecParallelHashTableAlloc(HashJoinTable hashtable,
|
||||
int batchno);
|
||||
int batchno);
|
||||
extern void ExecHashTableDestroy(HashJoinTable hashtable);
|
||||
extern void ExecHashTableDetach(HashJoinTable hashtable);
|
||||
extern void ExecHashTableDetachBatch(HashJoinTable hashtable);
|
||||
extern void ExecParallelHashTableSetCurrentBatch(HashJoinTable hashtable,
|
||||
int batchno);
|
||||
int batchno);
|
||||
|
||||
extern void ExecHashTableInsert(HashJoinTable hashtable,
|
||||
TupleTableSlot *slot,
|
||||
uint32 hashvalue);
|
||||
TupleTableSlot *slot,
|
||||
uint32 hashvalue);
|
||||
extern void ExecParallelHashTableInsert(HashJoinTable hashtable,
|
||||
TupleTableSlot *slot,
|
||||
uint32 hashvalue);
|
||||
extern void ExecParallelHashTableInsertCurrentBatch(HashJoinTable hashtable,
|
||||
TupleTableSlot *slot,
|
||||
uint32 hashvalue);
|
||||
extern void ExecParallelHashTableInsertCurrentBatch(HashJoinTable hashtable,
|
||||
TupleTableSlot *slot,
|
||||
uint32 hashvalue);
|
||||
extern bool ExecHashGetHashValue(HashJoinTable hashtable,
|
||||
ExprContext *econtext,
|
||||
List *hashkeys,
|
||||
bool outer_tuple,
|
||||
bool keep_nulls,
|
||||
uint32 *hashvalue);
|
||||
ExprContext *econtext,
|
||||
List *hashkeys,
|
||||
bool outer_tuple,
|
||||
bool keep_nulls,
|
||||
uint32 *hashvalue);
|
||||
extern void ExecHashGetBucketAndBatch(HashJoinTable hashtable,
|
||||
uint32 hashvalue,
|
||||
int *bucketno,
|
||||
int *batchno);
|
||||
uint32 hashvalue,
|
||||
int *bucketno,
|
||||
int *batchno);
|
||||
extern bool ExecScanHashBucket(HashJoinState *hjstate, ExprContext *econtext);
|
||||
extern bool ExecParallelScanHashBucket(HashJoinState *hjstate, ExprContext *econtext);
|
||||
extern void ExecPrepHashTableForUnmatched(HashJoinState *hjstate);
|
||||
extern bool ExecScanHashTableForUnmatched(HashJoinState *hjstate,
|
||||
ExprContext *econtext);
|
||||
ExprContext *econtext);
|
||||
extern void ExecHashTableReset(HashJoinTable hashtable);
|
||||
extern void ExecHashTableResetMatchFlags(HashJoinTable hashtable);
|
||||
extern void ExecChooseHashTableSize(double ntuples, int tupwidth, bool useskew,
|
||||
bool try_combined_work_mem,
|
||||
int parallel_workers,
|
||||
size_t *space_allowed,
|
||||
int *numbuckets,
|
||||
int *numbatches,
|
||||
int *num_skew_mcvs);
|
||||
bool try_combined_work_mem,
|
||||
int parallel_workers,
|
||||
size_t *space_allowed,
|
||||
int *numbuckets,
|
||||
int *numbatches,
|
||||
int *num_skew_mcvs);
|
||||
extern int ExecHashGetSkewBucket(HashJoinTable hashtable, uint32 hashvalue);
|
||||
extern void ExecHashEstimate(HashState *node, ParallelContext *pcxt);
|
||||
extern void ExecHashInitializeDSM(HashState *node, ParallelContext *pcxt);
|
||||
@@ -74,6 +74,6 @@ extern void ExecHashInitializeWorker(HashState *node, ParallelWorkerContext *pwc
|
||||
extern void ExecHashRetrieveInstrumentation(HashState *node);
|
||||
extern void ExecShutdownHash(HashState *node);
|
||||
extern void ExecHashGetInstrumentation(HashInstrumentation *instrument,
|
||||
HashJoinTable hashtable);
|
||||
HashJoinTable hashtable);
|
||||
|
||||
#endif /* NODEHASH_H */
|
||||
|
@@ -26,9 +26,9 @@ extern void ExecHashJoinEstimate(HashJoinState *state, ParallelContext *pcxt);
|
||||
extern void ExecHashJoinInitializeDSM(HashJoinState *state, ParallelContext *pcxt);
|
||||
extern void ExecHashJoinReInitializeDSM(HashJoinState *state, ParallelContext *pcxt);
|
||||
extern void ExecHashJoinInitializeWorker(HashJoinState *state,
|
||||
ParallelWorkerContext *pwcxt);
|
||||
ParallelWorkerContext *pwcxt);
|
||||
|
||||
extern void ExecHashJoinSaveTuple(MinimalTuple tuple, uint32 hashvalue,
|
||||
BufFile **fileptr);
|
||||
BufFile **fileptr);
|
||||
|
||||
#endif /* NODEHASHJOIN_H */
|
||||
|
@@ -25,12 +25,12 @@ extern void ExecReScanIndexOnlyScan(IndexOnlyScanState *node);
|
||||
|
||||
/* Support functions for parallel index-only scans */
|
||||
extern void ExecIndexOnlyScanEstimate(IndexOnlyScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecIndexOnlyScanInitializeDSM(IndexOnlyScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecIndexOnlyScanReInitializeDSM(IndexOnlyScanState *node,
|
||||
ParallelContext *pcxt);
|
||||
ParallelContext *pcxt);
|
||||
extern void ExecIndexOnlyScanInitializeWorker(IndexOnlyScanState *node,
|
||||
ParallelWorkerContext *pwcxt);
|
||||
ParallelWorkerContext *pwcxt);
|
||||
|
||||
#endif /* NODEINDEXONLYSCAN_H */
|
||||
|
@@ -27,21 +27,21 @@ extern void ExecIndexScanEstimate(IndexScanState *node, ParallelContext *pcxt);
|
||||
extern void ExecIndexScanInitializeDSM(IndexScanState *node, ParallelContext *pcxt);
|
||||
extern void ExecIndexScanReInitializeDSM(IndexScanState *node, ParallelContext *pcxt);
|
||||
extern void ExecIndexScanInitializeWorker(IndexScanState *node,
|
||||
ParallelWorkerContext *pwcxt);
|
||||
ParallelWorkerContext *pwcxt);
|
||||
|
||||
/*
|
||||
* These routines are exported to share code with nodeIndexonlyscan.c and
|
||||
* nodeBitmapIndexscan.c
|
||||
*/
|
||||
extern void ExecIndexBuildScanKeys(PlanState *planstate, Relation index,
|
||||
List *quals, bool isorderby,
|
||||
ScanKey *scanKeys, int *numScanKeys,
|
||||
IndexRuntimeKeyInfo **runtimeKeys, int *numRuntimeKeys,
|
||||
IndexArrayKeyInfo **arrayKeys, int *numArrayKeys);
|
||||
List *quals, bool isorderby,
|
||||
ScanKey *scanKeys, int *numScanKeys,
|
||||
IndexRuntimeKeyInfo **runtimeKeys, int *numRuntimeKeys,
|
||||
IndexArrayKeyInfo **arrayKeys, int *numArrayKeys);
|
||||
extern void ExecIndexEvalRuntimeKeys(ExprContext *econtext,
|
||||
IndexRuntimeKeyInfo *runtimeKeys, int numRuntimeKeys);
|
||||
IndexRuntimeKeyInfo *runtimeKeys, int numRuntimeKeys);
|
||||
extern bool ExecIndexEvalArrayKeys(ExprContext *econtext,
|
||||
IndexArrayKeyInfo *arrayKeys, int numArrayKeys);
|
||||
IndexArrayKeyInfo *arrayKeys, int numArrayKeys);
|
||||
extern bool ExecIndexAdvanceArrayKeys(IndexArrayKeyInfo *arrayKeys, int numArrayKeys);
|
||||
|
||||
#endif /* NODEINDEXSCAN_H */
|
||||
|
@@ -26,6 +26,6 @@ extern void ExecSeqScanEstimate(SeqScanState *node, ParallelContext *pcxt);
|
||||
extern void ExecSeqScanInitializeDSM(SeqScanState *node, ParallelContext *pcxt);
|
||||
extern void ExecSeqScanReInitializeDSM(SeqScanState *node, ParallelContext *pcxt);
|
||||
extern void ExecSeqScanInitializeWorker(SeqScanState *node,
|
||||
ParallelWorkerContext *pwcxt);
|
||||
ParallelWorkerContext *pwcxt);
|
||||
|
||||
#endif /* NODESEQSCAN_H */
|
||||
|
@@ -82,30 +82,30 @@ extern int SPI_connect(void);
|
||||
extern int SPI_connect_ext(int options);
|
||||
extern int SPI_finish(void);
|
||||
extern int SPI_execute(const char *src, bool read_only, long tcount);
|
||||
extern int SPI_execute_plan(SPIPlanPtr plan, Datum *Values, const char *Nulls,
|
||||
bool read_only, long tcount);
|
||||
extern int SPI_execute_plan_with_paramlist(SPIPlanPtr plan,
|
||||
ParamListInfo params,
|
||||
bool read_only, long tcount);
|
||||
extern int SPI_execute_plan(SPIPlanPtr plan, Datum *Values, const char *Nulls,
|
||||
bool read_only, long tcount);
|
||||
extern int SPI_execute_plan_with_paramlist(SPIPlanPtr plan,
|
||||
ParamListInfo params,
|
||||
bool read_only, long tcount);
|
||||
extern int SPI_exec(const char *src, long tcount);
|
||||
extern int SPI_execp(SPIPlanPtr plan, Datum *Values, const char *Nulls,
|
||||
long tcount);
|
||||
extern int SPI_execute_snapshot(SPIPlanPtr plan,
|
||||
Datum *Values, const char *Nulls,
|
||||
Snapshot snapshot,
|
||||
Snapshot crosscheck_snapshot,
|
||||
bool read_only, bool fire_triggers, long tcount);
|
||||
extern int SPI_execute_with_args(const char *src,
|
||||
int nargs, Oid *argtypes,
|
||||
Datum *Values, const char *Nulls,
|
||||
bool read_only, long tcount);
|
||||
extern int SPI_execp(SPIPlanPtr plan, Datum *Values, const char *Nulls,
|
||||
long tcount);
|
||||
extern int SPI_execute_snapshot(SPIPlanPtr plan,
|
||||
Datum *Values, const char *Nulls,
|
||||
Snapshot snapshot,
|
||||
Snapshot crosscheck_snapshot,
|
||||
bool read_only, bool fire_triggers, long tcount);
|
||||
extern int SPI_execute_with_args(const char *src,
|
||||
int nargs, Oid *argtypes,
|
||||
Datum *Values, const char *Nulls,
|
||||
bool read_only, long tcount);
|
||||
extern SPIPlanPtr SPI_prepare(const char *src, int nargs, Oid *argtypes);
|
||||
extern SPIPlanPtr SPI_prepare_cursor(const char *src, int nargs, Oid *argtypes,
|
||||
int cursorOptions);
|
||||
int cursorOptions);
|
||||
extern SPIPlanPtr SPI_prepare_params(const char *src,
|
||||
ParserSetupHook parserSetup,
|
||||
void *parserSetupArg,
|
||||
int cursorOptions);
|
||||
ParserSetupHook parserSetup,
|
||||
void *parserSetupArg,
|
||||
int cursorOptions);
|
||||
extern int SPI_keepplan(SPIPlanPtr plan);
|
||||
extern SPIPlanPtr SPI_saveplan(SPIPlanPtr plan);
|
||||
extern int SPI_freeplan(SPIPlanPtr plan);
|
||||
@@ -122,7 +122,7 @@ extern CachedPlan *SPI_plan_get_cached_plan(SPIPlanPtr plan);
|
||||
extern HeapTuple SPI_copytuple(HeapTuple tuple);
|
||||
extern HeapTupleHeader SPI_returntuple(HeapTuple tuple, TupleDesc tupdesc);
|
||||
extern HeapTuple SPI_modifytuple(Relation rel, HeapTuple tuple, int natts,
|
||||
int *attnum, Datum *Values, const char *Nulls);
|
||||
int *attnum, Datum *Values, const char *Nulls);
|
||||
extern int SPI_fnumber(TupleDesc tupdesc, const char *fname);
|
||||
extern char *SPI_fname(TupleDesc tupdesc, int fnumber);
|
||||
extern char *SPI_getvalue(HeapTuple tuple, TupleDesc tupdesc, int fnumber);
|
||||
@@ -139,14 +139,14 @@ extern void SPI_freetuple(HeapTuple pointer);
|
||||
extern void SPI_freetuptable(SPITupleTable *tuptable);
|
||||
|
||||
extern Portal SPI_cursor_open(const char *name, SPIPlanPtr plan,
|
||||
Datum *Values, const char *Nulls, bool read_only);
|
||||
Datum *Values, const char *Nulls, bool read_only);
|
||||
extern Portal SPI_cursor_open_with_args(const char *name,
|
||||
const char *src,
|
||||
int nargs, Oid *argtypes,
|
||||
Datum *Values, const char *Nulls,
|
||||
bool read_only, int cursorOptions);
|
||||
const char *src,
|
||||
int nargs, Oid *argtypes,
|
||||
Datum *Values, const char *Nulls,
|
||||
bool read_only, int cursorOptions);
|
||||
extern Portal SPI_cursor_open_with_paramlist(const char *name, SPIPlanPtr plan,
|
||||
ParamListInfo params, bool read_only);
|
||||
ParamListInfo params, bool read_only);
|
||||
extern Portal SPI_cursor_find(const char *name);
|
||||
extern void SPI_cursor_fetch(Portal portal, bool forward, long count);
|
||||
extern void SPI_cursor_move(Portal portal, bool forward, long count);
|
||||
|
@@ -27,6 +27,6 @@ extern DestReceiver *CreateTupleQueueDestReceiver(shm_mq_handle *handle);
|
||||
extern TupleQueueReader *CreateTupleQueueReader(shm_mq_handle *handle);
|
||||
extern void DestroyTupleQueueReader(TupleQueueReader *reader);
|
||||
extern HeapTuple TupleQueueReaderNext(TupleQueueReader *reader,
|
||||
bool nowait, bool *done);
|
||||
bool nowait, bool *done);
|
||||
|
||||
#endif /* TQUEUE_H */
|
||||
|
@@ -22,8 +22,8 @@
|
||||
extern DestReceiver *CreateTuplestoreDestReceiver(void);
|
||||
|
||||
extern void SetTuplestoreDestReceiverParams(DestReceiver *self,
|
||||
Tuplestorestate *tStore,
|
||||
MemoryContext tContext,
|
||||
bool detoast);
|
||||
Tuplestorestate *tStore,
|
||||
MemoryContext tContext,
|
||||
bool detoast);
|
||||
|
||||
#endif /* TSTORE_RECEIVER_H */
|
||||
|
@@ -295,40 +295,40 @@ typedef struct MinimalTupleTableSlot
|
||||
|
||||
/* in executor/execTuples.c */
|
||||
extern TupleTableSlot *MakeTupleTableSlot(TupleDesc tupleDesc,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
extern TupleTableSlot *ExecAllocTableSlot(List **tupleTable, TupleDesc desc,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
extern void ExecResetTupleTable(List *tupleTable, bool shouldFree);
|
||||
extern TupleTableSlot *MakeSingleTupleTableSlot(TupleDesc tupdesc,
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
const TupleTableSlotOps *tts_ops);
|
||||
extern void ExecDropSingleTupleTableSlot(TupleTableSlot *slot);
|
||||
extern void ExecSetSlotDescriptor(TupleTableSlot *slot, TupleDesc tupdesc);
|
||||
extern TupleTableSlot *ExecStoreHeapTuple(HeapTuple tuple,
|
||||
TupleTableSlot *slot,
|
||||
bool shouldFree);
|
||||
TupleTableSlot *slot,
|
||||
bool shouldFree);
|
||||
extern void ExecForceStoreHeapTuple(HeapTuple tuple,
|
||||
TupleTableSlot *slot,
|
||||
bool shouldFree);
|
||||
TupleTableSlot *slot,
|
||||
bool shouldFree);
|
||||
extern TupleTableSlot *ExecStoreBufferHeapTuple(HeapTuple tuple,
|
||||
TupleTableSlot *slot,
|
||||
Buffer buffer);
|
||||
TupleTableSlot *slot,
|
||||
Buffer buffer);
|
||||
extern TupleTableSlot *ExecStorePinnedBufferHeapTuple(HeapTuple tuple,
|
||||
TupleTableSlot *slot,
|
||||
Buffer buffer);
|
||||
TupleTableSlot *slot,
|
||||
Buffer buffer);
|
||||
extern TupleTableSlot *ExecStoreMinimalTuple(MinimalTuple mtup,
|
||||
TupleTableSlot *slot,
|
||||
bool shouldFree);
|
||||
TupleTableSlot *slot,
|
||||
bool shouldFree);
|
||||
extern void ExecForceStoreMinimalTuple(MinimalTuple mtup, TupleTableSlot *slot,
|
||||
bool shouldFree);
|
||||
bool shouldFree);
|
||||
extern TupleTableSlot *ExecStoreVirtualTuple(TupleTableSlot *slot);
|
||||
extern TupleTableSlot *ExecStoreAllNullTuple(TupleTableSlot *slot);
|
||||
extern void ExecStoreHeapTupleDatum(Datum data, TupleTableSlot *slot);
|
||||
extern HeapTuple ExecFetchSlotHeapTuple(TupleTableSlot *slot, bool materialize, bool *shouldFree);
|
||||
extern MinimalTuple ExecFetchSlotMinimalTuple(TupleTableSlot *slot,
|
||||
bool *shouldFree);
|
||||
bool *shouldFree);
|
||||
extern Datum ExecFetchSlotHeapTupleDatum(TupleTableSlot *slot);
|
||||
extern void slot_getmissingattrs(TupleTableSlot *slot, int startAttNum,
|
||||
int lastAttNum);
|
||||
int lastAttNum);
|
||||
extern void slot_getsomeattrs_int(TupleTableSlot *slot, int attnum);
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user