Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes16kdownloads
appendinfo.h51 linesDownload Raw Back to optimizer
1/*-------------------------------------------------------------------------2 *3 * appendinfo.h4 *	  Routines for mapping expressions between append rel parent(s) and5 *	  children6 *7 * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group8 * Portions Copyright (c) 1994, Regents of the University of California9 *10 * src/include/optimizer/appendinfo.h11 *12 *-------------------------------------------------------------------------13 */14#ifndef APPENDINFO_H15#define APPENDINFO_H16 17#include "nodes/pathnodes.h"18#include "utils/relcache.h"19 20extern AppendRelInfo *make_append_rel_info(Relation parentrel,21										   Relation childrel,22										   Index parentRTindex, Index childRTindex);23extern Node *adjust_appendrel_attrs(PlannerInfo *root, Node *node,24									int nappinfos, AppendRelInfo **appinfos);25extern Node *adjust_appendrel_attrs_multilevel(PlannerInfo *root, Node *node,26											   RelOptInfo *childrel,27											   RelOptInfo *parentrel);28extern Relids adjust_child_relids(Relids relids, int nappinfos,29								  AppendRelInfo **appinfos);30extern Relids adjust_child_relids_multilevel(PlannerInfo *root, Relids relids,31											 RelOptInfo *childrel,32											 RelOptInfo *parentrel);33extern List *adjust_inherited_attnums(List *attnums, AppendRelInfo *context);34extern List *adjust_inherited_attnums_multilevel(PlannerInfo *root,35												 List *attnums,36												 Index child_relid,37												 Index top_parent_relid);38extern void get_translated_update_targetlist(PlannerInfo *root, Index relid,39											 List **processed_tlist,40											 List **update_colnos);41extern AppendRelInfo **find_appinfos_by_relids(PlannerInfo *root,42											   Relids relids, int *nappinfos);43extern void add_row_identity_var(PlannerInfo *root, Var *orig_var,44								 Index rtindex, const char *rowid_name);45extern void add_row_identity_columns(PlannerInfo *root, Index rtindex,46									 RangeTblEntry *target_rte,47									 Relation target_relation);48extern void distribute_row_identity_vars(PlannerInfo *root);49 50#endif							/* APPENDINFO_H */51 
codekingpro/portable-devtools · Team Ai