Wiki / Plan Nodes
Plan Nodes
Compare versionsExecution plan nodes, source interfaces, strategies, resource behavior and examples.
Reading PostgreSQL 18.6.
42 entries; 42 recorded in PostgreSQL 18.6.
-
Aggregate Aggregation
Agg
Computes aggregate results using the selected grouping strategy and aggregation stage.
-
Group Aggregation
Group
Groups an ordered input stream by its grouping columns.
-
WindowAgg Aggregation
WindowAgg
Evaluates window functions over ordered partitions of its child output.
-
Bitmap Index Scan Bitmap
BitmapIndexScan
Scans an index and produces a bitmap of matching tuple locations.
-
BitmapAnd Bitmap
BitmapAnd
Intersects bitmaps produced by its child plans.
-
BitmapOr Bitmap
BitmapOr
Unions bitmaps produced by its child plans.
-
Append Combination
Append
Visits its child plans and combines their rows.
-
Merge Append Combination
MergeAppend
Merges sorted child streams while preserving the required ordering.
-
Recursive Union Combination
RecursiveUnion
Executes the non-recursive and recursive terms of a recursive union using working and intermediate tables.
-
SetOp Combination
SetOp
Implements the selected INTERSECT or EXCEPT operation using a sorted or hashed strategy.
-
Unique Combination
Unique
Removes adjacent duplicates from a sorted input stream.
-
Limit Control
Limit
Applies the plan row-count and offset bounds to its child output.
-
LockRows Control
LockRows
Locks rows selected by its child for row-locking clauses.
-
ProjectSet Control
ProjectSet
Evaluates set-returning expressions in the target list for rows from its child.
-
Result Control
Result
Evaluates a projection and an optional one-time condition, with or without an input plan.
-
Custom Scan Extensibility
CustomScan
Executes a plan supplied by a custom-scan provider.
-
Foreign Scan Extensibility
ForeignScan
Delegates a foreign scan or supported direct modification to the foreign-data wrapper.
-
Hash Join
Hash
Builds the hash table consumed by a hash join.
-
Hash Join Join
HashJoin
Probes a hash table built from its inner input while reading its outer input.
-
Merge Join Join
MergeJoin
Joins ordered input streams using merge clauses.
-
Nested Loop Join
NestLoop
Rescans the inner plan for outer rows and evaluates the join qualifications.
-
Materialize Materialization
Material
Stores its child output so the rows can be read again.
-
Memoize Materialization
Memoize
Caches results from a parameterized child and reuses them when the same parameter values recur.
-
ModifyTable Modification
ModifyTable
Performs the data-modification operation selected by the plan and produces RETURNING rows when requested.
-
Incremental Sort Ordering
IncrementalSort
Extends an existing ordering by sorting groups that share the presorted key prefix.
-
Sort Ordering
Sort
Sorts rows from its child according to the plan sort keys.
-
Gather Parallelism
Gather
Combines tuples from parallel workers and any participating leader execution.
-
Gather Merge Parallelism
GatherMerge
Merges ordered tuple streams from parallel workers and any participating leader execution.
-
Bitmap Heap Scan Scan
BitmapHeapScan
Visits heap pages selected by a bitmap and performs required rechecks.
-
CTE Scan Scan
CteScan
Reads the shared tuplestore of a common-table-expression plan, asking that plan for more rows when needed.
-
Function Scan Scan
FunctionScan
Scans table-function results from a FROM clause.
-
Index Only Scan Scan
IndexOnlyScan
Uses index values for the result and checks tuple visibility, visiting the heap when the visibility map does not suffice.
-
Index Scan Scan
IndexScan
Uses an index to identify table tuples and fetches them from the relation.
-
NamedTuplestoreScan
Scans a named tuplestore registered in the query environment.
-
Sample Scan Scan
SampleScan
Reads a relation using the selected table-sampling method.
-
Seq Scan Scan
SeqScan
Reads a relation through a sequential scan and applies its scan qualifications.
-
Subquery Scan Scan
SubqueryScan
Scans the output of a subquery plan.
-
Table Function Scan Scan
TableFuncScan
Scans the rows produced by a table function such as XMLTABLE.
-
Tid Range Scan Scan
TidRangeScan
Scans a relation over a range of tuple identifiers.
-
Tid Scan Scan
TidScan
Fetches table tuples using tuple identifiers.
-
Values Scan Scan
ValuesScan
Evaluates and scans a VALUES row list.
-
WorkTable Scan Scan
WorkTableScan
Reads the current working table of a recursive union.
RecordedFirst recordedInterface or attribute changeNo longer recorded
Squares indicate presence in sampled builds, not first introduction. Select a square for the same-version definition and sources.
Changes in PostgreSQL 18.6 · Export JSON
Reading this collection
Core plan-node identities are reconciled with EXPLAIN and executor dispatch. Text strategies and parallel or partial modifiers are attributes of a node. Manual examples are not new benchmark measurements.