137 case T_ProjectSetState:
141 case T_ModifyTableState:
149 case T_MergeAppendState:
153 case T_RecursiveUnionState:
157 case T_BitmapAndState:
161 case T_BitmapOrState:
169 case T_SampleScanState:
177 case T_GatherMergeState:
181 case T_IndexScanState:
185 case T_IndexOnlyScanState:
189 case T_BitmapIndexScanState:
193 case T_BitmapHeapScanState:
201 case T_TidRangeScanState:
205 case T_SubqueryScanState:
209 case T_FunctionScanState:
213 case T_TableFuncScanState:
217 case T_ValuesScanState:
225 case T_NamedTuplestoreScanState:
229 case T_WorkTableScanState:
233 case T_ForeignScanState:
237 case T_CustomScanState:
241 case T_NestLoopState:
245 case T_MergeJoinState:
249 case T_HashJoinState:
253 case T_MaterialState:
265 case T_IncrementalSortState:
277 case T_WindowAggState:
293 case T_LockRowsState:
331 case T_IndexScanState:
335 case T_IndexOnlyScanState:
339 case T_CustomScanState:
343 case T_MaterialState:
380 case T_IndexScanState:
384 case T_IndexOnlyScanState:
388 case T_CustomScanState:
392 case T_MaterialState:
428 case T_IndexOnlyScan:
537 if (((
Append *) node)->nasyncplans > 0)
540 foreach(l, ((
Append *) node)->appendplans)
559 case T_IndexOnlyScan:
581 case T_IncrementalSort:
613 elog(
ERROR,
"cache lookup failed for relation %u", indexid);
642 case T_TableFuncScan:
644 case T_NamedTuplestoreScan:
645 case T_WorkTableScan:
IndexAmRoutine * GetIndexAmRoutineByAmId(Oid amoid, bool noerror)
void bms_free(Bitmapset *a)
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
Assert(PointerIsAligned(start, uint64))
#define HeapTupleIsValid(tuple)
static void * GETSTRUCT(const HeapTupleData *tuple)
void InstrEndLoop(Instrumentation *instr)
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)