106 if (
splan->plan->extParam != NULL)
109 if (
splan->chgParam != NULL)
117 if (
splan->plan->extParam != NULL)
138 case T_ProjectSetState:
142 case T_ModifyTableState:
150 case T_MergeAppendState:
154 case T_RecursiveUnionState:
158 case T_BitmapAndState:
162 case T_BitmapOrState:
170 case T_SampleScanState:
178 case T_GatherMergeState:
182 case T_IndexScanState:
186 case T_IndexOnlyScanState:
190 case T_BitmapIndexScanState:
194 case T_BitmapHeapScanState:
202 case T_TidRangeScanState:
206 case T_SubqueryScanState:
210 case T_FunctionScanState:
214 case T_TableFuncScanState:
218 case T_ValuesScanState:
226 case T_NamedTuplestoreScanState:
230 case T_WorkTableScanState:
234 case T_ForeignScanState:
238 case T_CustomScanState:
242 case T_NestLoopState:
246 case T_MergeJoinState:
250 case T_HashJoinState:
254 case T_MaterialState:
266 case T_IncrementalSortState:
278 case T_WindowAggState:
294 case T_LockRowsState:
332 case T_IndexScanState:
336 case T_IndexOnlyScanState:
340 case T_CustomScanState:
344 case T_MaterialState:
381 case T_IndexScanState:
385 case T_IndexOnlyScanState:
389 case T_CustomScanState:
393 case T_MaterialState:
429 case T_IndexOnlyScan:
538 if (((
Append *) node)->nasyncplans > 0)
541 foreach(l, ((
Append *) node)->appendplans)
560 case T_IndexOnlyScan:
582 case T_IncrementalSort:
614 elog(
ERROR,
"cache lookup failed for relation %u", indexid);
643 case T_TableFuncScan:
645 case T_NamedTuplestoreScan:
646 case T_WorkTableScan:
IndexAmRoutine * GetIndexAmRoutineByAmId(Oid amoid, bool noerror)
void bms_free(Bitmapset *a)
elog(ERROR, "%s: %s", p2, msg)
void ExecMarkPos(PlanState *node)
bool ExecSupportsMarkRestore(Path *pathnode)
static bool IndexSupportsBackwardScan(Oid indexid)
bool ExecMaterializesOutput(NodeTag plantype)
bool ExecSupportsBackwardScan(Plan *node)
void ExecReScan(PlanState *node)
void ExecRestrPos(PlanState *node)
void ReScanExprContext(ExprContext *econtext)
void UpdateChangedParamSet(PlanState *node, Bitmapset *newchg)
#define outerPlanState(node)
#define innerPlanState(node)
#define CUSTOMPATH_SUPPORT_BACKWARD_SCAN
#define CUSTOMPATH_SUPPORT_MARK_RESTORE
#define HeapTupleIsValid(tuple)
void InstrEndLoop(Instrumentation *instr)
Assert(fmt[strlen(fmt) - 1] !='\n')
Datum subpath(PG_FUNCTION_ARGS)
void pfree(void *pointer)
void ExecReScanAgg(AggState *node)
void ExecReScanAppend(AppendState *node)
void ExecReScanBitmapAnd(BitmapAndState *node)
void ExecReScanBitmapHeapScan(BitmapHeapScanState *node)
void ExecReScanBitmapIndexScan(BitmapIndexScanState *node)
void ExecReScanBitmapOr(BitmapOrState *node)
void ExecReScanCteScan(CteScanState *node)
void ExecCustomRestrPos(CustomScanState *node)
void ExecReScanCustomScan(CustomScanState *node)
void ExecCustomMarkPos(CustomScanState *node)
void ExecReScanForeignScan(ForeignScanState *node)
void ExecReScanFunctionScan(FunctionScanState *node)
void ExecReScanGatherMerge(GatherMergeState *node)
void ExecReScanGather(GatherState *node)
void ExecReScanGroup(GroupState *node)
void ExecReScanHash(HashState *node)
void ExecReScanHashJoin(HashJoinState *node)
void ExecReScanIncrementalSort(IncrementalSortState *node)
void ExecReScanIndexOnlyScan(IndexOnlyScanState *node)
void ExecIndexOnlyRestrPos(IndexOnlyScanState *node)
void ExecIndexOnlyMarkPos(IndexOnlyScanState *node)
void ExecReScanIndexScan(IndexScanState *node)
void ExecIndexRestrPos(IndexScanState *node)
void ExecIndexMarkPos(IndexScanState *node)
void ExecReScanLimit(LimitState *node)
void ExecReScanLockRows(LockRowsState *node)
void ExecReScanMaterial(MaterialState *node)
void ExecMaterialMarkPos(MaterialState *node)
void ExecMaterialRestrPos(MaterialState *node)
void ExecReScanMemoize(MemoizeState *node)
void ExecReScanMergeAppend(MergeAppendState *node)
void ExecReScanMergeJoin(MergeJoinState *node)
void ExecReScanModifyTable(ModifyTableState *node)
void ExecReScanNamedTuplestoreScan(NamedTuplestoreScanState *node)
void ExecReScanNestLoop(NestLoopState *node)
void ExecReScanProjectSet(ProjectSetState *node)
void ExecReScanRecursiveUnion(RecursiveUnionState *node)
void ExecReScanResult(ResultState *node)
void ExecResultRestrPos(ResultState *node)
void ExecResultMarkPos(ResultState *node)
void ExecReScanSampleScan(SampleScanState *node)
void ExecReScanSeqScan(SeqScanState *node)
void ExecReScanSetOp(SetOpState *node)
void ExecSortMarkPos(SortState *node)
void ExecReScanSort(SortState *node)
void ExecSortRestrPos(SortState *node)
void ExecReScanSetParamPlan(SubPlanState *node, PlanState *parent)
void ExecReScanSubqueryScan(SubqueryScanState *node)
void ExecReScanTableFuncScan(TableFuncScanState *node)
void ExecReScanTidRangeScan(TidRangeScanState *node)
void ExecReScanTidScan(TidScanState *node)
void ExecReScanUnique(UniqueState *node)
void ExecReScanValuesScan(ValuesScanState *node)
void ExecReScanWindowAgg(WindowAggState *node)
void ExecReScanWorkTableScan(WorkTableScanState *node)
#define IsA(nodeptr, _type_)
#define castNode(_type_, nodeptr)
FormData_pg_class * Form_pg_class
static int list_length(const List *l)
static Datum ObjectIdGetDatum(Oid X)
Instrumentation * instrument
ExprContext * ps_ExprContext
struct PlanState * planstate
void ReleaseSysCache(HeapTuple tuple)
HeapTuple SearchSysCache1(int cacheId, Datum key1)