/usr/include/postgres-xc/server/optimizer/pgxcship.h is in postgres-xc-server-dev 1.1-2ubuntu2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | /*-------------------------------------------------------------------------
*
* pgxcship.h
* Functionalities for the evaluation of expression shippability
* to remote nodes
*
*
* Portions Copyright (c) 1996-2012 PostgreSQL Global Development Group
* Portions Copyright (c) 2010-2012 Postgres-XC Development Group
*
* src/include/optimizer/pgxcship.h
*
*-------------------------------------------------------------------------
*/
#ifndef PGXCSHIP_H
#define PGXCSHIP_H
#include "nodes/parsenodes.h"
#include "nodes/relation.h"
#include "pgxc/locator.h"
/* Determine if query is shippable */
extern ExecNodes *pgxc_is_query_shippable(Query *query, int query_level);
/* Determine if an expression is shippable */
extern bool pgxc_is_expr_shippable(Expr *node, bool *has_aggs);
/* Determine if given function is shippable */
extern bool pgxc_is_func_shippable(Oid funcid);
/* Check equijoin conditions on given relations */
extern Expr *pgxc_find_dist_equijoin_qual(List *dist_vars1, List *dist_vars2,
Node *quals);
/* Merge given execution nodes based on join shippability conditions */
extern ExecNodes *pgxc_merge_exec_nodes(ExecNodes *en1, ExecNodes *en2);
/* Check if given Query includes distribution column */
extern bool pgxc_query_has_distcolgrouping(Query *query, ExecNodes *exec_nodes);
/* Check the shippability of an index */
extern bool pgxc_check_index_shippability(RelationLocInfo *relLocInfo,
bool is_primary,
bool is_unique,
bool is_exclusion,
List *indexAttrs,
List *indexExprs);
/* Check the shippability of a parent-child constraint */
extern bool pgxc_check_fk_shippability(RelationLocInfo *parentLocInfo,
RelationLocInfo *childLocInfo,
List *parentRefs,
List *childRefs);
extern bool pgxc_check_triggers_shippability(Oid relid, int commandType);
extern bool pgxc_find_nonshippable_row_trig(Relation rel, int16 tgtype_event,
int16 tgtype_timing, bool ignore_timing);
#endif
|