postgresql/src/backend/utils/adt
Alvaro Herrera 599b33b949
Stop accessing checkAsUser via RTE in some cases
A future commit will move the checkAsUser field from RangeTblEntry
to a new node that, unlike RTEs, will only be created for tables
mentioned in the query but not for the inheritance child relations
added to the query by the planner.  So, checkAsUser value for a
given child relation will have to be obtained by referring to that
for its ancestor mentioned in the query.

In preparation, it seems better to expand the use of RelOptInfo.userid
during planning in place of rte->checkAsUser so that there will be
fewer places to adjust for the above change.

Given that the child-to-ancestor mapping is not available during the
execution of a given "child" ForeignScan node, add a checkAsUser
field to ForeignScan to carry the child relation's RelOptInfo.userid.

Author: Amit Langote <amitlangote09@gmail.com>
Discussion: https://postgr.es/m/CA+HiwqGFCs2uq7VRKi7g+FFKbP6Ea_2_HkgZb2HPhUfaAKT3ng@mail.gmail.com
2022-11-30 12:07:03 +01:00
..
.gitignore Build all Flex files standalone 2022-09-04 12:09:01 +07:00
acl.c Provide per-table permissions for vacuum and analyze. 2022-11-28 12:08:14 -05:00
amutils.c Fix incorrect uses of Datum conversion macros 2022-09-05 13:30:44 +02:00
array_expanded.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
array_selfuncs.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
array_typanalyze.c Rename shadowed local variables 2022-10-05 21:01:41 +13:00
array_userfuncs.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
arrayfuncs.c Fix trim_array() for zero-dimensional array argument. 2022-07-31 13:43:17 -04:00
arraysubs.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
arrayutils.c Add construct_array_builtin, deconstruct_array_builtin 2022-07-01 11:23:15 +02:00
ascii.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
bool.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
cash.c Remove unused includes 2021-12-01 16:10:56 +01:00
char.c Change type "char"'s I/O format for non-ASCII characters. 2022-08-02 10:29:35 -04:00
cryptohashfuncs.c Improve error handling of cryptohash computations 2022-01-11 09:55:16 +09:00
date.c Replace SQLValueFunction by COERCE_SQL_SYNTAX 2022-11-21 18:31:59 +09:00
datetime.c Rename SetSingleFuncCall() to InitMaterializedSRF() 2022-10-18 10:22:35 +09:00
datum.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
dbsize.c Refactor aclcheck functions 2022-11-13 09:02:41 +01:00
domains.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
encode.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
enum.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
expandeddatum.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
expandedrecord.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
float.c Use fabsf() instead of Abs() or fabs() where appropriate 2022-10-08 13:43:26 +02:00
format_type.c Revert SQL/JSON features 2022-09-01 17:07:14 -04:00
formatting.c Revert SQL/JSON features 2022-09-01 17:07:14 -04:00
genfile.c Rename SetSingleFuncCall() to InitMaterializedSRF() 2022-10-18 10:22:35 +09:00
geo_ops.c Harmonize more parameter names in bulk. 2022-09-20 13:09:30 -07:00
geo_selfuncs.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
geo_spgist.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
hbafuncs.c Add support for file inclusions in HBA and ident configuration files 2022-11-24 13:51:34 +09:00
inet_cidr_ntop.c Avoid conflicts with library versions of inet_net_ntop() and friends. 2019-08-18 19:27:23 -04:00
inet_net_pton.c Avoid conflicts with library versions of inet_net_ntop() and friends. 2019-08-18 19:27:23 -04:00
int8.c Teach planner and executor about monotonic window funcs 2022-04-08 10:34:36 +12:00
int.c Remove pg_atoi() 2022-02-15 07:44:26 +01:00
json.c Revert SQL/JSON features 2022-09-01 17:07:14 -04:00
jsonb_gin.c Avoid using list_length() to test for empty list. 2022-08-17 11:12:35 -04:00
jsonb_op.c Add construct_array_builtin, deconstruct_array_builtin 2022-07-01 11:23:15 +02:00
jsonb_util.c Harmonize more parameter names in bulk. 2022-09-20 13:09:30 -07:00
jsonb.c Harmonize more parameter names in bulk. 2022-09-20 13:09:30 -07:00
jsonbsubs.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
jsonfuncs.c Rename SetSingleFuncCall() to InitMaterializedSRF() 2022-10-18 10:22:35 +09:00
jsonpath_exec.c Harmonize more parameter names in bulk. 2022-09-20 13:09:30 -07:00
jsonpath_gram.y Suppress variable-set-but-not-used warnings from clang 15. 2022-09-20 12:04:37 -04:00
jsonpath_internal.h Build all Flex files standalone 2022-09-04 12:09:01 +07:00
jsonpath_scan.l Harmonize more lexer function parameter names. 2022-09-22 13:27:16 -07:00
jsonpath.c Revert SQL/JSON features 2022-09-01 17:07:14 -04:00
levenshtein.c Further -Wshadow=compatible-local warning fixes 2022-08-24 22:04:28 +12:00
like_match.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
like_support.c Defend against stack overrun in a few more places. 2022-08-24 13:02:19 -04:00
like.c Harmonize more parameter names in bulk. 2022-09-20 13:09:30 -07:00
lockfuncs.c Replace many MemSet calls with struct initialization 2022-07-16 08:50:49 +02:00
mac8.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
mac.c Specialize tuplesort routines for different kinds of abbreviated keys 2022-04-02 15:22:25 +07:00
Makefile Build all Flex files standalone 2022-09-04 12:09:01 +07:00
mcxtfuncs.c Remove AssertArg and AssertState 2022-10-28 09:19:06 +02:00
meson.build meson: Add initial version of meson based build system 2022-09-21 22:37:17 -07:00
misc.c Rename SetSingleFuncCall() to InitMaterializedSRF() 2022-10-18 10:22:35 +09:00
multirangetypes_selfuncs.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
multirangetypes.c Fix incorrect uses of Datum conversion macros 2022-09-05 13:30:44 +02:00
name.c Add construct_array_builtin, deconstruct_array_builtin 2022-07-01 11:23:15 +02:00
network_gist.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
network_selfuncs.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
network_spgist.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
network.c Remove configure probe for sockaddr_in6 and require AF_INET6. 2022-08-26 10:18:30 +12:00
numeric.c Improve the accuracy of numeric power() for integer exponents. 2022-10-20 10:10:17 +01:00
numutils.c Rename shadowed local variables 2022-10-05 21:01:41 +13:00
oid.c Rename value node fields 2022-01-14 11:26:08 +01:00
oracle_compat.c Avoid ERRCODE_INTERNAL_ERROR in oracle_compat.c functions. 2022-05-26 12:25:10 -04:00
orderedsetaggs.c Allow nodeSort to perform Datum sorts for byref types 2022-10-28 09:25:12 +13:00
partitionfuncs.c Rename shadowed local variables 2022-10-05 21:01:41 +13:00
pg_locale.c Split up guc.c for better build speed and ease of maintenance. 2022-09-13 11:11:45 -04:00
pg_lsn.c Fix incorrect uses of Datum conversion macros 2022-09-05 13:30:44 +02:00
pg_upgrade_support.c Revert 56-bit relfilenode change and follow-up commits. 2022-09-28 09:55:28 -04:00
pgstatfuncs.c Fix initialization of pg_stat_get_lastscan() 2022-11-08 10:50:09 +09:00
pseudotypes.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
quote.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
rangetypes_gist.c Remove unnecessary uses of Abs() 2022-10-07 13:29:33 +02:00
rangetypes_selfuncs.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
rangetypes_spgist.c Fix incorrect uses of Datum conversion macros 2022-09-05 13:30:44 +02:00
rangetypes_typanalyze.c Invent qsort_interruptible(). 2022-07-12 16:30:36 -04:00
rangetypes.c Harmonize more parameter names in bulk. 2022-09-20 13:09:30 -07:00
regexp.c Consistently use named parameters in regex code. 2022-09-19 15:10:24 -07:00
regproc.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
ri_triggers.c Refactor ownercheck functions 2022-11-13 08:12:37 +01:00
rowtypes.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
ruleutils.c Replace SQLValueFunction by COERCE_SQL_SYNTAX 2022-11-21 18:31:59 +09:00
selfuncs.c Stop accessing checkAsUser via RTE in some cases 2022-11-30 12:07:03 +01:00
tid.c Tighten overflow checks in tidin(). 2022-03-03 20:04:35 -05:00
timestamp.c Replace SQLValueFunction by COERCE_SQL_SYNTAX 2022-11-21 18:31:59 +09:00
trigfuncs.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
tsginidx.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
tsgistidx.c Remove unnecessary uses of Abs() 2022-10-07 13:29:33 +02:00
tsquery_cleanup.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
tsquery_gist.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
tsquery_op.c Fix incorrect uses of Datum conversion macros 2022-09-05 13:30:44 +02:00
tsquery_rewrite.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
tsquery_util.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
tsquery.c Introduce t_isalnum() to replace t_isalpha() || t_isdigit() tests. 2022-10-06 11:08:56 -04:00
tsrank.c Remove unnecessary uses of Abs() 2022-10-07 13:29:33 +02:00
tsvector_op.c Add comments and a missing CHECK_FOR_INTERRUPTS in ts_headline. 2022-11-21 17:07:29 -05:00
tsvector_parser.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
tsvector.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
uuid.c Pre-beta mechanical code beautification. 2022-05-12 15:17:30 -04:00
varbit.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
varchar.c Split up guc.c for better build speed and ease of maintenance. 2022-09-13 11:11:45 -04:00
varlena.c Rename SetSingleFuncCall() to InitMaterializedSRF() 2022-10-18 10:22:35 +09:00
version.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
windowfuncs.c Teach planner and executor about monotonic window funcs 2022-04-08 10:34:36 +12:00
xid8funcs.c Fix visibility check when XID is committed in CLOG but not in procarray. 2022-06-27 08:21:08 +03:00
xid.c Add min() and max() aggregates for xid8. 2022-02-10 12:33:41 +09:00
xml.c Clean up some inconsistencies with GUC declarations 2022-10-31 12:44:48 +09:00