|
PostgreSQL Source Code git master
|
#include "postgres.h"#include "access/amapi.h"#include "access/htup_details.h"#include "catalog/pg_class.h"#include "executor/executor.h"#include "executor/instrument.h"#include "executor/nodeAgg.h"#include "executor/nodeAppend.h"#include "executor/nodeBitmapAnd.h"#include "executor/nodeBitmapHeapscan.h"#include "executor/nodeBitmapIndexscan.h"#include "executor/nodeBitmapOr.h"#include "executor/nodeCtescan.h"#include "executor/nodeCustom.h"#include "executor/nodeForeignscan.h"#include "executor/nodeFunctionscan.h"#include "executor/nodeGather.h"#include "executor/nodeGatherMerge.h"#include "executor/nodeGroup.h"#include "executor/nodeHash.h"#include "executor/nodeHashjoin.h"#include "executor/nodeIncrementalSort.h"#include "executor/nodeIndexonlyscan.h"#include "executor/nodeIndexscan.h"#include "executor/nodeLimit.h"#include "executor/nodeLockRows.h"#include "executor/nodeMaterial.h"#include "executor/nodeMemoize.h"#include "executor/nodeMergeAppend.h"#include "executor/nodeMergejoin.h"#include "executor/nodeModifyTable.h"#include "executor/nodeNamedtuplestorescan.h"#include "executor/nodeNestloop.h"#include "executor/nodeProjectSet.h"#include "executor/nodeRecursiveunion.h"#include "executor/nodeResult.h"#include "executor/nodeSamplescan.h"#include "executor/nodeSeqscan.h"#include "executor/nodeSetOp.h"#include "executor/nodeSort.h"#include "executor/nodeSubplan.h"#include "executor/nodeSubqueryscan.h"#include "executor/nodeTableFuncscan.h"#include "executor/nodeTidrangescan.h"#include "executor/nodeTidscan.h"#include "executor/nodeUnique.h"#include "executor/nodeValuesscan.h"#include "executor/nodeWindowAgg.h"#include "executor/nodeWorktablescan.h"#include "nodes/extensible.h"#include "nodes/pathnodes.h"#include "utils/syscache.h"
Go to the source code of this file.
Functions | |
| static bool | IndexSupportsBackwardScan (Oid indexid) |
| void | ExecReScan (PlanState *node) |
| void | ExecMarkPos (PlanState *node) |
| void | ExecRestrPos (PlanState *node) |
| bool | ExecSupportsMarkRestore (Path *pathnode) |
| bool | ExecSupportsBackwardScan (Plan *node) |
| bool | ExecMaterializesOutput (NodeTag plantype) |
Definition at line 328 of file execAmi.c.
References DEBUG2, elog, ExecCustomMarkPos(), ExecIndexMarkPos(), ExecIndexOnlyMarkPos(), ExecMaterialMarkPos(), ExecResultMarkPos(), ExecSortMarkPos(), fb(), and nodeTag.
Referenced by ExecMergeJoin(), and ExecResultMarkPos().
Definition at line 636 of file execAmi.c.
References fb().
Referenced by build_subplan(), consider_parallel_nestloop(), cost_subplan(), and match_unsorted_outer().
Definition at line 78 of file execAmi.c.
References bms_free(), PlanState::chgParam, elog, ERROR, ExecReScanAgg(), ExecReScanAppend(), ExecReScanBitmapAnd(), ExecReScanBitmapHeapScan(), ExecReScanBitmapIndexScan(), ExecReScanBitmapOr(), ExecReScanCteScan(), ExecReScanCustomScan(), ExecReScanForeignScan(), ExecReScanFunctionScan(), ExecReScanGather(), ExecReScanGatherMerge(), ExecReScanGroup(), ExecReScanHash(), ExecReScanHashJoin(), ExecReScanIncrementalSort(), ExecReScanIndexOnlyScan(), ExecReScanIndexScan(), ExecReScanLimit(), ExecReScanLockRows(), ExecReScanMaterial(), ExecReScanMemoize(), ExecReScanMergeAppend(), ExecReScanMergeJoin(), ExecReScanModifyTable(), ExecReScanNamedTuplestoreScan(), ExecReScanNestLoop(), ExecReScanProjectSet(), ExecReScanRecursiveUnion(), ExecReScanResult(), ExecReScanSampleScan(), ExecReScanSeqScan(), ExecReScanSetOp(), ExecReScanSetParamPlan(), ExecReScanSort(), ExecReScanSubqueryScan(), ExecReScanTableFuncScan(), ExecReScanTidRangeScan(), ExecReScanTidScan(), ExecReScanUnique(), ExecReScanValuesScan(), ExecReScanWindowAgg(), ExecReScanWorkTableScan(), Plan::extParam, fb(), PlanState::initPlan, innerPlanState, InstrEndLoop(), PlanState::instrument, lfirst, nodeTag, outerPlanState, PlanState::plan, SubPlanState::planstate, PlanState::ps_ExprContext, ReScanExprContext(), PlanState::subPlan, and UpdateChangedParamSet().
Referenced by buildSubPlanHash(), ExecAsyncRequest(), ExecIndexOnlyScan(), ExecIndexScan(), ExecNestLoop(), ExecProcNode(), ExecReScanAgg(), ExecReScanAppend(), ExecReScanBitmapAnd(), ExecReScanBitmapHeapScan(), ExecReScanBitmapOr(), ExecReScanForeignScan(), ExecReScanGather(), ExecReScanGatherMerge(), ExecReScanGroup(), ExecReScanHash(), ExecReScanHashJoin(), ExecReScanIncrementalSort(), ExecReScanLimit(), ExecReScanLockRows(), ExecReScanMaterial(), ExecReScanMemoize(), ExecReScanMergeAppend(), ExecReScanMergeJoin(), ExecReScanNestLoop(), ExecReScanProjectSet(), ExecReScanRecursiveUnion(), ExecReScanResult(), ExecReScanSetOp(), ExecReScanSort(), ExecReScanSubqueryScan(), ExecReScanUnique(), ExecReScanWindowAgg(), ExecScanSubPlan(), ExecutorRewind(), MultiExecBitmapIndexScan(), and MultiExecProcNode().
Definition at line 377 of file execAmi.c.
References elog, ERROR, ExecCustomRestrPos(), ExecIndexOnlyRestrPos(), ExecIndexRestrPos(), ExecMaterialRestrPos(), ExecResultRestrPos(), ExecSortRestrPos(), fb(), and nodeTag.
Referenced by ExecMergeJoin(), and ExecResultRestrPos().
Definition at line 512 of file execAmi.c.
References CUSTOMPATH_SUPPORT_BACKWARD_SCAN, ExecSupportsBackwardScan(), fb(), IndexSupportsBackwardScan(), lfirst, nodeTag, outerPlan, and Plan::parallel_aware.
Referenced by ExecSupportsBackwardScan(), PerformCursorOpen(), SPI_cursor_open_internal(), and standard_planner().
Definition at line 419 of file execAmi.c.
References Assert, castNode, CUSTOMPATH_SUPPORT_MARK_RESTORE, ExecSupportsMarkRestore(), fb(), IsA, linitial, list_length(), and subpath().
Referenced by ExecSupportsMarkRestore(), and final_cost_mergejoin().
Definition at line 604 of file execAmi.c.
References elog, ERROR, fb(), GetIndexAmRoutineByAmId(), GETSTRUCT(), HeapTupleIsValid, ObjectIdGetDatum(), ReleaseSysCache(), and SearchSysCache1().
Referenced by ExecSupportsBackwardScan().