PostgreSQL Source Code  git master
PlannerInfo Struct Reference

#include <pathnodes.h>

Public Member Functions

 pg_node_attr (no_copy_equal, no_read, no_query_jumble) NodeTag type
 
PlannerInfo *parent_root pg_node_attr (read_write_ignore)
 
struct RelOptInfo **simple_rel_array pg_node_attr (array_size(simple_rel_array_size))
 
RangeTblEntry **simple_rte_array pg_node_attr (read_write_ignore)
 
struct AppendRelInfo **append_rel_array pg_node_attr (read_write_ignore)
 
struct HTAB *join_rel_hash pg_node_attr (read_write_ignore)
 
List **join_rel_level pg_node_attr (read_write_ignore)
 
struct PlaceHolderInfo **placeholder_array pg_node_attr (read_write_ignore, array_size(placeholder_array_size))
 
int placeholder_array_size pg_node_attr (read_write_ignore)
 
List *part_schemes pg_node_attr (read_write_ignore)
 
List *initial_rels pg_node_attr (read_write_ignore)
 
List *upper_rels[UPPERREL_FINAL+1] pg_node_attr (read_write_ignore)
 
struct PathTarget *upper_targets[UPPERREL_FINAL+1] pg_node_attr (read_write_ignore)
 
AttrNumber *grouping_map pg_node_attr (read_write_ignore)
 
MemoryContext planner_cxt pg_node_attr (read_write_ignore)
 
bool *isAltSubplan pg_node_attr (read_write_ignore)
 
bool *isUsedSubplan pg_node_attr (read_write_ignore)
 
void *join_search_private pg_node_attr (read_write_ignore)
 

Data Fields

Queryparse
 
PlannerGlobalglob
 
Index query_level
 
Listplan_params
 
Bitmapsetouter_params
 
int simple_rel_array_size
 
Relids all_baserels
 
Relids outer_join_rels
 
Relids all_query_rels
 
Listjoin_rel_list
 
int join_cur_level
 
Listinit_plans
 
Listcte_plan_ids
 
Listmultiexpr_params
 
Listjoin_domains
 
Listeq_classes
 
bool ec_merging_done
 
Listcanon_pathkeys
 
Listleft_join_clauses
 
Listright_join_clauses
 
Listfull_join_clauses
 
Listjoin_info_list
 
int last_rinfo_serial
 
Relids all_result_relids
 
Relids leaf_result_relids
 
Listappend_rel_list
 
Listrow_identity_vars
 
ListrowMarks
 
Listplaceholder_list
 
Listfkey_list
 
Listquery_pathkeys
 
Listgroup_pathkeys
 
int num_groupby_pathkeys
 
Listwindow_pathkeys
 
Listdistinct_pathkeys
 
Listsort_pathkeys
 
Listsetop_pathkeys
 
Listprocessed_groupClause
 
Listprocessed_distinctClause
 
Listprocessed_tlist
 
Listupdate_colnos
 
Listminmax_aggs
 
Cardinality total_table_pages
 
Selectivity tuple_fraction
 
Cardinality limit_tuples
 
Index qual_security_level
 
bool hasJoinRTEs
 
bool hasLateralRTEs
 
bool hasHavingQual
 
bool hasPseudoConstantQuals
 
bool hasAlternativeSubPlans
 
bool placeholdersFrozen
 
bool hasRecursion
 
Listagginfos
 
Listaggtransinfos
 
int numOrderedAggs
 
bool hasNonPartialAggs
 
bool hasNonSerialAggs
 
int wt_param_id
 
struct Pathnon_recursive_path
 
Relids curOuterRels
 
ListcurOuterParams
 
bool partColsUpdated
 

Detailed Description

Definition at line 195 of file pathnodes.h.

Member Function Documentation

◆ pg_node_attr() [1/18]

struct RelOptInfo** simple_rel_array PlannerInfo::pg_node_attr ( array_size(simple_rel_array_size )

◆ pg_node_attr() [2/18]

PlannerInfo::pg_node_attr ( no_copy_equal  ,
no_read  ,
no_query_jumble   
)

◆ pg_node_attr() [3/18]

PlannerInfo* parent_root PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [4/18]

RangeTblEntry** simple_rte_array PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [5/18]

struct AppendRelInfo** append_rel_array PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [6/18]

struct HTAB* join_rel_hash PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [7/18]

List** join_rel_level PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [8/18]

int placeholder_array_size PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [9/18]

List* part_schemes PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [10/18]

List* initial_rels PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [11/18]

List* upper_rels [UPPERREL_FINAL + 1] PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [12/18]

struct PathTarget* upper_targets [UPPERREL_FINAL + 1] PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [13/18]

AttrNumber* grouping_map PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [14/18]

MemoryContext planner_cxt PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [15/18]

bool* isAltSubplan PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [16/18]

bool* isUsedSubplan PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [17/18]

void* join_search_private PlannerInfo::pg_node_attr ( read_write_ignore  )

◆ pg_node_attr() [18/18]

struct PlaceHolderInfo** placeholder_array PlannerInfo::pg_node_attr ( read_write_ignore  ,
array_size(placeholder_array_size)   
)

Field Documentation

◆ agginfos

List* PlannerInfo::agginfos

Definition at line 512 of file pathnodes.h.

Referenced by build_minmax_path().

◆ aggtransinfos

List* PlannerInfo::aggtransinfos

Definition at line 514 of file pathnodes.h.

Referenced by build_minmax_path().

◆ all_baserels

Relids PlannerInfo::all_baserels

Definition at line 255 of file pathnodes.h.

◆ all_query_rels

Relids PlannerInfo::all_query_rels

Definition at line 269 of file pathnodes.h.

◆ all_result_relids

Relids PlannerInfo::all_result_relids

Definition at line 354 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ append_rel_list

List* PlannerInfo::append_rel_list

Definition at line 365 of file pathnodes.h.

Referenced by build_minmax_path(), and pull_up_simple_subquery().

◆ canon_pathkeys

List* PlannerInfo::canon_pathkeys

Definition at line 320 of file pathnodes.h.

◆ cte_plan_ids

List* PlannerInfo::cte_plan_ids

◆ curOuterParams

List* PlannerInfo::curOuterParams

Definition at line 536 of file pathnodes.h.

◆ curOuterRels

Relids PlannerInfo::curOuterRels

Definition at line 534 of file pathnodes.h.

◆ distinct_pathkeys

List* PlannerInfo::distinct_pathkeys

Definition at line 400 of file pathnodes.h.

◆ ec_merging_done

bool PlannerInfo::ec_merging_done

Definition at line 317 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ eq_classes

List* PlannerInfo::eq_classes

Definition at line 314 of file pathnodes.h.

Referenced by build_minmax_path(), and pull_up_simple_subquery().

◆ fkey_list

List* PlannerInfo::fkey_list

Definition at line 382 of file pathnodes.h.

◆ full_join_clauses

List* PlannerInfo::full_join_clauses

Definition at line 337 of file pathnodes.h.

◆ glob

PlannerGlobal* PlannerInfo::glob

Definition at line 205 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ group_pathkeys

List* PlannerInfo::group_pathkeys

Definition at line 388 of file pathnodes.h.

◆ hasAlternativeSubPlans

bool PlannerInfo::hasAlternativeSubPlans

Definition at line 502 of file pathnodes.h.

◆ hasHavingQual

bool PlannerInfo::hasHavingQual

Definition at line 498 of file pathnodes.h.

Referenced by build_minmax_path(), and build_setop_child_paths().

◆ hasJoinRTEs

bool PlannerInfo::hasJoinRTEs

Definition at line 494 of file pathnodes.h.

◆ hasLateralRTEs

bool PlannerInfo::hasLateralRTEs

Definition at line 496 of file pathnodes.h.

◆ hasNonPartialAggs

bool PlannerInfo::hasNonPartialAggs

Definition at line 518 of file pathnodes.h.

◆ hasNonSerialAggs

bool PlannerInfo::hasNonSerialAggs

Definition at line 520 of file pathnodes.h.

◆ hasPseudoConstantQuals

bool PlannerInfo::hasPseudoConstantQuals

Definition at line 500 of file pathnodes.h.

◆ hasRecursion

bool PlannerInfo::hasRecursion

Definition at line 506 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ init_plans

◆ join_cur_level

int PlannerInfo::join_cur_level

Definition at line 296 of file pathnodes.h.

◆ join_domains

List* PlannerInfo::join_domains

Definition at line 311 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ join_info_list

List* PlannerInfo::join_info_list

Definition at line 340 of file pathnodes.h.

Referenced by build_minmax_path(), and pull_up_simple_subquery().

◆ join_rel_list

List* PlannerInfo::join_rel_list

Definition at line 280 of file pathnodes.h.

◆ last_rinfo_serial

int PlannerInfo::last_rinfo_serial

Definition at line 343 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ leaf_result_relids

Relids PlannerInfo::leaf_result_relids

Definition at line 356 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ left_join_clauses

List* PlannerInfo::left_join_clauses

Definition at line 326 of file pathnodes.h.

◆ limit_tuples

Cardinality PlannerInfo::limit_tuples

Definition at line 485 of file pathnodes.h.

Referenced by build_minmax_path(), and build_setop_child_paths().

◆ minmax_aggs

List* PlannerInfo::minmax_aggs

Definition at line 474 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ multiexpr_params

List* PlannerInfo::multiexpr_params

Definition at line 308 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ non_recursive_path

struct Path* PlannerInfo::non_recursive_path

Definition at line 528 of file pathnodes.h.

Referenced by pull_up_simple_subquery(), and set_worktable_pathlist().

◆ num_groupby_pathkeys

int PlannerInfo::num_groupby_pathkeys

Definition at line 395 of file pathnodes.h.

◆ numOrderedAggs

int PlannerInfo::numOrderedAggs

Definition at line 516 of file pathnodes.h.

◆ outer_join_rels

Relids PlannerInfo::outer_join_rels

Definition at line 261 of file pathnodes.h.

◆ outer_params

Bitmapset* PlannerInfo::outer_params

Definition at line 221 of file pathnodes.h.

Referenced by build_minmax_path(), finalize_plan(), and pull_up_simple_subquery().

◆ parse

◆ partColsUpdated

bool PlannerInfo::partColsUpdated

Definition at line 551 of file pathnodes.h.

◆ placeholder_list

List* PlannerInfo::placeholder_list

Definition at line 374 of file pathnodes.h.

Referenced by build_minmax_path(), and pull_up_simple_subquery().

◆ placeholdersFrozen

bool PlannerInfo::placeholdersFrozen

Definition at line 504 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ plan_params

List* PlannerInfo::plan_params

◆ processed_distinctClause

List* PlannerInfo::processed_distinctClause

Definition at line 447 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ processed_groupClause

List* PlannerInfo::processed_groupClause

Definition at line 435 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ processed_tlist

List* PlannerInfo::processed_tlist

Definition at line 458 of file pathnodes.h.

Referenced by build_minmax_path(), pull_up_simple_subquery(), and recurse_set_operations().

◆ qual_security_level

Index PlannerInfo::qual_security_level

Definition at line 491 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ query_level

Index PlannerInfo::query_level

Definition at line 208 of file pathnodes.h.

Referenced by build_minmax_path(), pull_up_simple_subquery(), and subquery_planner().

◆ query_pathkeys

List* PlannerInfo::query_pathkeys

Definition at line 385 of file pathnodes.h.

Referenced by build_minmax_path().

◆ right_join_clauses

List* PlannerInfo::right_join_clauses

Definition at line 332 of file pathnodes.h.

◆ row_identity_vars

List* PlannerInfo::row_identity_vars

Definition at line 368 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ rowMarks

List* PlannerInfo::rowMarks

Definition at line 371 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ setop_pathkeys

List* PlannerInfo::setop_pathkeys

Definition at line 404 of file pathnodes.h.

Referenced by build_setop_child_paths().

◆ simple_rel_array_size

int PlannerInfo::simple_rel_array_size

Definition at line 232 of file pathnodes.h.

◆ sort_pathkeys

List* PlannerInfo::sort_pathkeys

Definition at line 402 of file pathnodes.h.

◆ total_table_pages

Cardinality PlannerInfo::total_table_pages

Definition at line 480 of file pathnodes.h.

◆ tuple_fraction

Selectivity PlannerInfo::tuple_fraction

Definition at line 483 of file pathnodes.h.

Referenced by build_minmax_path().

◆ update_colnos

List* PlannerInfo::update_colnos

Definition at line 466 of file pathnodes.h.

Referenced by pull_up_simple_subquery().

◆ window_pathkeys

List* PlannerInfo::window_pathkeys

Definition at line 398 of file pathnodes.h.

◆ wt_param_id

int PlannerInfo::wt_param_id

The documentation for this struct was generated from the following file: