|
PostgreSQL Source Code git master
|
#include "access/sdir.h"#include "lib/stringinfo.h"#include "nodes/params.h"#include "nodes/parsenodes.h"#include "storage/block.h"

Go to the source code of this file.
Macros | |
| #define | planner_subplan_get_plan(root, subplan) ((Plan *) list_nth((root)->glob->subplans, (subplan)->plan_id - 1)) |
| #define | planner_rt_fetch(rti, root) |
| #define | AMFLAG_HAS_TID_RANGE (1 << 0) |
| #define | IS_SIMPLE_REL(rel) |
| #define | IS_JOIN_REL(rel) |
| #define | IS_UPPER_REL(rel) |
| #define | IS_OTHER_REL(rel) |
| #define | IS_PARTITIONED_REL(rel) |
| #define | REL_HAS_ALL_PART_PROPS(rel) |
| #define | RELATION_WAS_MADE_UNIQUE(rel, sjinfo, nominal_jointype) |
| #define | IS_GROUPED_REL(rel) ((rel)->agg_info != NULL) |
| #define | EC_MUST_BE_REDUNDANT(eclass) ((eclass)->ec_has_const) |
| #define | get_pathtarget_sortgroupref(target, colno) ((target)->sortgrouprefs ? (target)->sortgrouprefs[colno] : (Index) 0) |
| #define | PATH_REQ_OUTER(path) ((path)->param_info ? (path)->param_info->ppi_req_outer : (Relids) NULL) |
| #define | IS_DUMMY_APPEND(p) (IsA((p), AppendPath) && ((AppendPath *) (p))->subpaths == NIL) |
| #define | IS_DUMMY_REL(r) is_dummy_rel(r) |
| #define | RINFO_IS_PUSHED_DOWN(rinfo, joinrelids) |
| #define | GROUPING_CAN_USE_SORT 0x0001 |
| #define | GROUPING_CAN_USE_HASH 0x0002 |
| #define | GROUPING_CAN_PARTIAL_AGG 0x0004 |
Functions | |
| bool | is_dummy_rel (RelOptInfo *rel) |
| #define AMFLAG_HAS_TID_RANGE (1 << 0) |
Definition at line 879 of file pathnodes.h.
Definition at line 1586 of file pathnodes.h.
| #define get_pathtarget_sortgroupref | ( | target, | |
| colno | |||
| ) | ((target)->sortgrouprefs ? (target)->sortgrouprefs[colno] : (Index) 0) |
Definition at line 1796 of file pathnodes.h.
| #define GROUPING_CAN_PARTIAL_AGG 0x0004 |
Definition at line 3521 of file pathnodes.h.
| #define GROUPING_CAN_USE_HASH 0x0002 |
Definition at line 3520 of file pathnodes.h.
| #define GROUPING_CAN_USE_SORT 0x0001 |
Definition at line 3519 of file pathnodes.h.
| #define IS_DUMMY_APPEND | ( | p | ) | (IsA((p), AppendPath) && ((AppendPath *) (p))->subpaths == NIL) |
Definition at line 2186 of file pathnodes.h.
| #define IS_DUMMY_REL | ( | r | ) | is_dummy_rel(r) |
Definition at line 2194 of file pathnodes.h.
| #define IS_GROUPED_REL | ( | rel | ) | ((rel)->agg_info != NULL) |
Definition at line 1161 of file pathnodes.h.
| #define IS_JOIN_REL | ( | rel | ) |
Definition at line 900 of file pathnodes.h.
| #define IS_OTHER_REL | ( | rel | ) |
Definition at line 910 of file pathnodes.h.
| #define IS_PARTITIONED_REL | ( | rel | ) |
Definition at line 1135 of file pathnodes.h.
| #define IS_SIMPLE_REL | ( | rel | ) |
Definition at line 895 of file pathnodes.h.
| #define IS_UPPER_REL | ( | rel | ) |
Definition at line 905 of file pathnodes.h.
| #define PATH_REQ_OUTER | ( | path | ) | ((path)->param_info ? (path)->param_info->ppi_req_outer : (Relids) NULL) |
Definition at line 1917 of file pathnodes.h.
| #define planner_rt_fetch | ( | rti, | |
| root | |||
| ) |
Definition at line 610 of file pathnodes.h.
| #define planner_subplan_get_plan | ( | root, | |
| subplan | |||
| ) | ((Plan *) list_nth((root)->glob->subplans, (subplan)->plan_id - 1)) |
Definition at line 195 of file pathnodes.h.
| #define REL_HAS_ALL_PART_PROPS | ( | rel | ) |
Definition at line 1143 of file pathnodes.h.
| #define RELATION_WAS_MADE_UNIQUE | ( | rel, | |
| sjinfo, | |||
| nominal_jointype | |||
| ) |
Definition at line 1154 of file pathnodes.h.
| #define RINFO_IS_PUSHED_DOWN | ( | rinfo, | |
| joinrelids | |||
| ) |
Definition at line 2949 of file pathnodes.h.
| typedef struct AggClauseCosts AggClauseCosts |
| typedef struct AggClauseInfo AggClauseInfo |
| typedef struct AggTransInfo AggTransInfo |
| typedef struct AppendPath AppendPath |
| typedef struct AppendRelInfo AppendRelInfo |
| typedef struct BitmapAndPath BitmapAndPath |
| typedef struct BitmapHeapPath BitmapHeapPath |
| typedef struct BitmapOrPath BitmapOrPath |
| typedef enum CostSelector CostSelector |
| typedef struct CustomPath CustomPath |
| typedef struct EquivalenceClass EquivalenceClass |
| typedef struct EquivalenceMember EquivalenceMember |
| typedef struct ForeignKeyOptInfo ForeignKeyOptInfo |
| typedef struct ForeignPath ForeignPath |
| typedef struct GatherMergePath GatherMergePath |
| typedef struct GatherPath GatherPath |
| typedef struct GroupByOrdering GroupByOrdering |
| typedef struct GroupingExprInfo GroupingExprInfo |
| typedef struct GroupingSetData GroupingSetData |
| typedef struct GroupingSetsPath GroupingSetsPath |
| typedef struct GroupResultPath GroupResultPath |
| typedef struct IncrementalSortPath IncrementalSortPath |
| typedef struct IndexClause IndexClause |
| typedef struct IndexOptInfo IndexOptInfo |
| typedef struct JoinCostWorkspace JoinCostWorkspace |
| typedef struct JoinDomain JoinDomain |
| typedef struct JoinPathExtraData JoinPathExtraData |
| typedef struct LockRowsPath LockRowsPath |
| typedef struct MaterialPath MaterialPath |
| typedef struct MemoizePath MemoizePath |
| typedef struct MergeAppendPath MergeAppendPath |
| typedef struct MergeScanSelCache MergeScanSelCache |
| typedef struct MinMaxAggInfo MinMaxAggInfo |
| typedef struct MinMaxAggPath MinMaxAggPath |
| typedef struct ModifyTablePath ModifyTablePath |
| typedef struct OuterJoinClauseInfo OuterJoinClauseInfo |
| typedef struct ParamPathInfo ParamPathInfo |
| typedef struct PartitionSchemeData* PartitionScheme |
Definition at line 644 of file pathnodes.h.
| typedef struct PartitionSchemeData PartitionSchemeData |
| typedef struct PathTarget PathTarget |
| typedef struct PlaceHolderInfo PlaceHolderInfo |
| typedef struct PlaceHolderVar PlaceHolderVar |
| typedef struct PlannerGlobal PlannerGlobal |
| typedef struct PlannerInfo PlannerInfo |
Definition at line 218 of file pathnodes.h.
| typedef struct PlannerParamItem PlannerParamItem |
| typedef struct ProjectionPath ProjectionPath |
| typedef struct ProjectSetPath ProjectSetPath |
| typedef struct RecursiveUnionPath RecursiveUnionPath |
| typedef struct RelAggInfo RelAggInfo |
Definition at line 30 of file pathnodes.h.
| typedef struct RelOptInfo RelOptInfo |
| typedef enum RelOptKind RelOptKind |
| typedef struct RestrictInfo RestrictInfo |
| typedef struct RollupData RollupData |
| typedef struct RowIdentityVarInfo RowIdentityVarInfo |
| typedef struct SemiAntiJoinFactors SemiAntiJoinFactors |
| typedef struct SpecialJoinInfo SpecialJoinInfo |
| typedef struct StatisticExtInfo StatisticExtInfo |
| typedef struct SubqueryScanPath SubqueryScanPath |
| typedef struct TidRangePath TidRangePath |
| typedef struct UniquePath UniquePath |
| typedef struct UniqueRelInfo UniqueRelInfo |
| typedef enum UpperRelationKind UpperRelationKind |
| typedef enum VolatileFunctionStatus VolatileFunctionStatus |
| typedef struct WindowAggPath WindowAggPath |
| enum CostSelector |
| Enumerator | |
|---|---|
| PARTITIONWISE_AGGREGATE_NONE | |
| PARTITIONWISE_AGGREGATE_FULL | |
| PARTITIONWISE_AGGREGATE_PARTIAL | |
Definition at line 3534 of file pathnodes.h.
| enum RelOptKind |
| Enumerator | |
|---|---|
| RELOPT_BASEREL | |
| RELOPT_JOINREL | |
| RELOPT_OTHER_MEMBER_REL | |
| RELOPT_OTHER_JOINREL | |
| RELOPT_UPPER_REL | |
| RELOPT_OTHER_UPPER_REL | |
Definition at line 881 of file pathnodes.h.
| enum UpperRelationKind |
| Enumerator | |
|---|---|
| UPPERREL_SETOP | |
| UPPERREL_PARTIAL_GROUP_AGG | |
| UPPERREL_GROUP_AGG | |
| UPPERREL_WINDOW | |
| UPPERREL_PARTIAL_DISTINCT | |
| UPPERREL_DISTINCT | |
| UPPERREL_ORDERED | |
| UPPERREL_FINAL | |
Definition at line 69 of file pathnodes.h.
| Enumerator | |
|---|---|
| VOLATILITY_UNKNOWN | |
| VOLATILITY_VOLATILE | |
| VOLATILITY_NOVOLATILE | |
Definition at line 1743 of file pathnodes.h.
| bool is_dummy_rel | ( | RelOptInfo * | rel | ) |
Definition at line 1464 of file joinrels.c.
References IS_DUMMY_APPEND, IsA, linitial, NIL, RelOptInfo::pathlist, and subpath().
Referenced by build_setop_child_paths(), generate_nonunion_paths(), generate_union_paths(), make_join_rel(), mark_dummy_rel(), and populate_joinrel_with_paths().