postgresql/src/test/regress/sql
Robert Haas f1358ca52d Adjust interaction of CREATEROLE with role properties.
Previously, a CREATEROLE user without SUPERUSER could not alter
REPLICATION users in any way, and could not set the BYPASSRLS
attribute. However, they could manipulate the CREATEDB property
even if they themselves did not possess it.

With this change, a CREATEROLE user without SUPERUSER can set or
clear the REPLICATION, BYPASSRLS, or CREATEDB property on a new
role or a role that they have rights to manage if and only if
that property is set for their own role.

This implements the standard idea that you can't give permissions
you don't have (but you can give the ones you do have). We might
in the future want to provide more powerful ways to constrain
what a CREATEROLE user can do - for example, to limit whether
CONNECTION LIMIT can be set or the values to which it can be set -
but that is left as future work.

Patch by me, reviewed by Nathan Bossart, Tushar Ahuja, and Neha
Sharma.

Discussion: http://postgr.es/m/CA+TgmobX=LHg_J5aT=0pi9gJy=JdtrUVGAu0zhr-i5v5nNbJDg@mail.gmail.com
2023-01-24 10:57:09 -05:00
..
advisory_lock.sql tests: Restrict pg_locks queries in advisory_locks.sql to current database 2022-10-05 10:44:38 -07:00
aggregates.sql Harden new parallel string_agg/array_agg regression test 2023-01-23 21:31:46 +13:00
alter_generic.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
alter_operator.sql Avoid unnecessary use of pg_strcasecmp for already-downcased identifiers. 2018-01-26 18:25:14 -05:00
alter_table.sql Support writing "CREATE/ALTER TABLE ... SET STORAGE DEFAULT". 2022-11-10 18:20:49 -05:00
amutils.sql Add support for nearest-neighbor (KNN) searches to SP-GiST 2018-09-19 01:54:10 +03:00
arrays.sql Convert a few datatype input functions to use "soft" error reporting. 2022-12-09 10:14:53 -05:00
async.sql
bit.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 13:22:08 -05:00
bitmapops.sql
boolean.sql Convert a few datatype input functions to use "soft" error reporting. 2022-12-09 10:14:53 -05:00
box.sql Convert the geometric input functions to report errors softly. 2022-12-14 16:10:20 -05:00
brin_bloom.sql BRIN bloom indexes 2021-03-26 13:35:32 +01:00
brin_multi.sql Fix handling of NaN values in BRIN minmax multi 2021-11-06 01:50:44 +01:00
brin.sql Avoid loss of code coverage with unlogged-index test cases. 2022-09-25 13:10:17 -04:00
btree_index.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
case.sql Add support for NullIfExpr in eval_const_expressions 2021-04-02 11:01:49 +02:00
char.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 19:42:05 -05:00
circle.sql Clean up ancient test style 2020-12-15 22:03:39 +01:00
cluster.sql Fix MAINTAIN privileges for toast tables and partitions. 2023-01-14 00:16:23 -08:00
collate.icu.utf8.sql Add option to use ICU as global locale provider 2022-03-17 11:13:16 +01:00
collate.linux.utf8.sql Database-level collation version tracking 2022-02-14 08:27:26 +01:00
collate.sql Improve error checking of CREATE COLLATION options. 2021-07-18 11:08:34 +01:00
collate.windows.win1252.sql Windows support in pg_import_system_collations 2023-01-03 14:21:56 +01:00
combocid.sql Sanitize the term "combo CID" in code comments 2021-03-25 16:08:03 +09:00
comments.sql
compression.sql Remove forced toast recompression in VACUUM FULL/CLUSTER 2021-06-14 09:25:50 +09:00
constraints.sql Choose FK name correctly during partition attachment 2022-09-08 13:17:02 +02:00
conversion.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
copy2.sql Add more tests for COPY with incorrect option combinations 2022-11-02 09:57:54 +09:00
copy.sql Fix typos in comments, code and documentation 2023-01-03 16:26:14 +09:00
copydml.sql Extend a test case a little 2021-02-26 09:11:15 +01:00
copyselect.sql psql: Show all query results by default 2022-04-04 20:00:33 +02:00
create_aggregate.sql Introduce "anycompatible" family of polymorphic types. 2020-03-19 11:43:11 -04:00
create_am.sql Improve handling of SET ACCESS METHOD for ALTER MATERIALIZED VIEW 2022-03-19 19:13:52 +09:00
create_cast.sql Record dependencies of a cast on other casts that it requires. 2022-10-17 14:02:05 -04:00
create_function_c.sql Rename create_function_N test scripts for clarity. 2022-02-08 15:40:08 -05:00
create_function_sql.sql Fix handling of R/W expanded datums that are passed to SQL functions. 2022-08-10 13:37:25 -04:00
create_index_spgist.sql Add a planner support function for starts_with(). 2021-11-17 16:54:12 -05:00
create_index.sql Fix a few issues with REINDEX grammar 2022-07-26 10:16:26 +09:00
create_misc.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
create_operator.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
create_procedure.sql Reconsider the handling of procedure OUT parameters. 2021-06-10 17:11:36 -04:00
create_role.sql Adjust interaction of CREATEROLE with role properties. 2023-01-24 10:57:09 -05:00
create_table_like.sql Extended statistics on expressions 2021-03-27 00:01:11 +01:00
create_table.sql Report a more useful error for reloptions on a partitioned table. 2022-11-09 12:28:34 -05:00
create_type.sql Add test scaffolding for soft error reporting from input functions. 2022-12-09 10:08:44 -05:00
create_view.sql Fix under-parenthesized display of AT TIME ZONE constructs. 2022-12-01 11:38:14 -05:00
date.sql Accept "+infinity" in date and timestamp[tz] input. 2023-01-01 14:16:07 -05:00
dbsize.sql Teach pg_size_pretty and pg_size_bytes about petabytes 2021-07-09 18:56:00 +12:00
delete.sql
dependency.sql Add grantable MAINTAIN privilege and pg_maintain role. 2022-12-13 17:33:28 -08:00
domain.sql Convert domain_in to report errors softly. 2022-12-11 12:56:54 -05:00
drop_if_exists.sql Introduce the 'force' option for the Drop Database command. 2019-11-13 08:25:33 +05:30
drop_operator.sql
enum.sql Convert enum_in() to report errors softly. 2022-12-25 14:32:30 -05:00
equivclass.sql Suppress unnecessary RelabelType nodes in more cases. 2020-02-26 18:14:12 -05:00
errors.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
event_trigger.sql Allow event trigger table_rewrite for ALTER MATERIALIZED VIEW 2022-08-17 14:55:20 +09:00
explain.sql Track I/O timing for temporary file blocks in EXPLAIN (BUFFERS) 2022-04-08 11:27:21 +09:00
expressions.sql Fix typos in comments, code and documentation 2023-01-03 16:26:14 +09:00
fast_default.sql Revert 56-bit relfilenode change and follow-up commits. 2022-09-28 09:55:28 -04:00
float4.sql Convert a few datatype input functions to use "soft" error reporting. 2022-12-09 10:14:53 -05:00
float8.sql Convert a few datatype input functions to use "soft" error reporting. 2022-12-09 10:14:53 -05:00
foreign_data.sql Remove useless tests for TRUNCATE on foreign tables 2022-05-31 09:44:00 +09:00
foreign_key.sql Fix self-referencing foreign keys with partitioned tables 2022-10-07 19:37:48 +02:00
functional_deps.sql
generated.sql Improve handling of inherited GENERATED expressions. 2023-01-11 15:55:02 -05:00
geometry.sql Convert the geometric input functions to report errors softly. 2022-12-14 16:10:20 -05:00
gin.sql Avoid loss of code coverage with unlogged-index test cases. 2022-09-25 13:10:17 -04:00
gist.sql Avoid loss of code coverage with unlogged-index test cases. 2022-09-25 13:10:17 -04:00
groupingsets.sql Make pull_var_clause() handle GroupingFuncs exactly like Aggrefs. 2022-05-12 11:31:46 -04:00
guc.sql Introduce GUC_NO_RESET flag. 2022-09-27 11:47:12 -04:00
hash_func.sql Fix portability issue in tests from commit ce773f230. 2021-09-03 10:01:02 -04:00
hash_index.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
hash_part.sql Fix typo in test comment. 2020-05-28 12:35:18 +03:00
horology.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
identity.sql Add support for MERGE SQL command 2022-03-28 16:47:48 +02:00
incremental_sort.sql Remove pessimistic cost penalization from Incremental Sort 2022-12-16 15:22:23 +13:00
index_including_gist.sql Support for INCLUDE attributes in GiST indexes 2019-03-10 11:37:17 +03:00
index_including.sql Support INCLUDE'd columns in SP-GiST. 2021-04-05 18:41:21 -04:00
indexing.sql Fix subtly-incorrect matching of parent and child partitioned indexes. 2022-08-18 12:12:03 -04:00
indirect_toast.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
inet.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 13:22:08 -05:00
infinite_recurse.sql Paper over regression failures in infinite_recurse() on PPC64 Linux. 2020-10-13 17:44:56 -04:00
inherit.sql Allow ordered partition scans in more cases 2021-08-03 12:25:52 +12:00
init_privs.sql
insert_conflict.sql Allow table-qualified variable names in ON CONFLICT ... WHERE. 2021-04-13 15:39:41 -04:00
insert.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
int2.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 17:50:24 -05:00
int4.sql Non-decimal integer literals 2022-12-14 06:17:07 +01:00
int8.sql Non-decimal integer literals 2022-12-14 06:17:07 +01:00
interval.sql Convert datetime input functions to use "soft" error reporting. 2022-12-09 16:07:49 -05:00
join_hash.sql Increase hash_mem_multiplier default to 2.0. 2022-02-16 18:41:52 -08:00
join.sql Allow left join removals and unique joins on partitioned tables 2023-01-09 17:15:08 +13:00
json_encoding.sql Convert json_in and jsonb_in to report errors softly. 2022-12-11 11:28:15 -05:00
json.sql Convert json_in and jsonb_in to report errors softly. 2022-12-11 11:28:15 -05:00
jsonb_jsonpath.sql Fix jsonpath existense checking of missing variables 2023-01-12 18:16:34 +03:00
jsonb.sql Fix jsonb subscripting to cope with toasted subscript values. 2022-12-12 16:17:54 -05:00
jsonpath_encoding.sql Allow Unicode escapes in any server encoding, not only UTF-8. 2020-03-06 14:17:43 -05:00
jsonpath.sql Convert jsonpath's input function to report errors softly 2022-12-24 15:21:20 -05:00
largeobject.sql Prevent write operations on large objects in read-only transactions 2022-07-04 15:48:52 +09:00
limit.sql Error out if SKIP LOCKED and WITH TIES are both specified 2021-10-01 18:29:18 -03:00
line.sql Convert the geometric input functions to report errors softly. 2022-12-14 16:10:20 -05:00
lock.sql Add support for security invoker views. 2022-03-22 10:28:10 +00:00
lseg.sql Convert the geometric input functions to report errors softly. 2022-12-14 16:10:20 -05:00
macaddr8.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 13:22:08 -05:00
macaddr.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 13:22:08 -05:00
matview.sql Really fix the ambiguity in REFRESH MATERIALIZED VIEW CONCURRENTLY. 2021-08-07 13:29:32 -04:00
md5.sql Put tests of md5() function into separate test file 2022-10-13 12:02:31 +02:00
memoize.sql Use OFFSET 0 instead of ORDER BY to stop subquery pullup 2023-01-24 13:49:10 +13:00
merge.sql Fix MERGE's test for unreachable WHEN clauses. 2023-01-10 14:17:47 +00:00
misc_functions.sql Rename pg_dissect_walfile_name() to pg_split_walfile_name() 2022-12-23 09:15:01 +09:00
misc_sanity.sql Replace explicit PIN entries in pg_depend with an OID range test. 2021-07-15 11:41:47 -04:00
misc.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
money.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 18:03:11 -05:00
multirangetypes.sql Convert range_in and multirange_in to report errors softly. 2022-12-15 12:18:36 -05:00
mvcc.sql Fix typo in MVCC test comment 2022-08-25 10:31:20 +02:00
name.sql Clean up ancient test style 2020-12-15 22:03:39 +01:00
namespace.sql Clean up duplicate role and schema names in regression tests. 2018-03-15 14:00:31 -04:00
numeric_big.sql Improve the accuracy of numeric power() for integer exponents. 2022-10-20 10:10:17 +01:00
numeric.sql Add non-decimal integer support to type numeric. 2023-01-23 19:21:22 +00:00
numerology.sql Non-decimal integer literals 2022-12-14 06:17:07 +01:00
object_address.sql Make object_address test output easier to update 2022-11-18 16:00:52 +01:00
oid.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 17:50:24 -05:00
oidjoins.sql Build in some knowledge about foreign-key relationships in the catalogs. 2021-02-02 17:11:55 -05:00
opr_sanity.sql Move provariadic sanity check to a more appropriate place 2022-12-15 07:54:48 +01:00
partition_aggregate.sql Force parallelism in partition_aggregate 2022-09-05 00:09:17 +02:00
partition_info.sql Fix crash with pg_partition_root 2019-03-22 17:27:38 +09:00
partition_join.sql Allow left join removals and unique joins on partitioned tables 2023-01-09 17:15:08 +13:00
partition_prune.sql Change the name of the Result Cache node to Memoize 2021-07-14 12:43:58 +12:00
password.sql Change default of password_encryption to scram-sha-256 2020-06-10 16:42:55 +02:00
path.sql Convert the geometric input functions to report errors softly. 2022-12-14 16:10:20 -05:00
pg_lsn.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 17:50:24 -05:00
plancache.sql Add generic_plans and custom_plans fields into pg_prepared_statements. 2020-07-20 11:55:50 +09:00
plpgsql.sql In plpgsql, don't preassign portal names to bound cursor variables. 2023-01-01 13:22:34 -05:00
point.sql Convert the geometric input functions to report errors softly. 2022-12-14 16:10:20 -05:00
polygon.sql Convert the geometric input functions to report errors softly. 2022-12-14 16:10:20 -05:00
polymorphism.sql Fix bugs in polymorphic-argument resolution for multiranges. 2021-07-27 15:01:49 -04:00
portals_p2.sql
portals.sql Fix incorrect logic in HaveRegisteredOrActiveSnapshot(). 2022-04-16 16:04:50 -04:00
prepare.sql Fix pg_prepared_statements.result_types for DML statements 2022-07-05 10:26:36 +02:00
prepared_xacts.sql Fix check for conflicting session- vs transaction-level locks. 2021-07-24 18:35:52 -04:00
privileges.sql Simplify permissions for LOCK TABLE. 2023-01-13 14:33:19 -08:00
psql_crosstab.sql
psql.sql Fix psql's \sf and \ef for new-style SQL functions. 2022-12-02 14:24:44 -05:00
publication.sql Allow publications with schema and table of the same schema. 2022-09-23 08:21:26 +05:30
random.sql Round off random_normal() test results one more decimal place. 2023-01-09 22:44:16 -05:00
rangefuncs.sql Close old gap in dependency checks for functions returning composite. 2022-07-22 12:46:42 -04:00
rangetypes.sql Convert range_in and multirange_in to report errors softly. 2022-12-15 12:18:36 -05:00
regex.sql Fix regexp misbehavior with capturing parens inside "{0}". 2021-08-24 16:37:26 -04:00
regproc.sql Remove new locale dependency in regproc regression test. 2022-12-27 13:06:42 -05:00
reindex_catalog.sql Fix rd_firstRelfilenodeSubid for nailed relations, in parallel workers. 2020-09-09 18:50:24 -07:00
reloptions.sql Try to stabilize reloptions test, again. 2022-01-20 23:10:40 +13:00
replica_identity.sql Allow REPLICA IDENTITY to be set on an index that's not (yet) valid. 2023-01-21 13:10:29 -05:00
returning.sql
roleattributes.sql Remove WITH OIDS support, change oid catalog column visibility. 2018-11-20 16:00:17 -08:00
rowsecurity.sql Remove logic for converting a table to a view. 2022-12-02 12:14:32 -05:00
rowtypes.sql Convert a few datatype input functions to use "soft" error reporting. 2022-12-09 10:14:53 -05:00
rules.sql Rework query relation permission checking 2022-12-06 16:09:24 +01:00
sanity_check.sql Test ALIGNOF_DOUBLE==4 compatibility under ALIGNOF_DOUBLE==8. 2022-04-22 20:20:11 -07:00
security_label.sql
select_distinct_on.sql Use Limit instead of Unique to implement DISTINCT, when possible 2022-10-28 23:04:38 +13:00
select_distinct.sql Have the planner consider Incremental Sort for DISTINCT 2023-01-11 10:25:43 +13:00
select_having.sql
select_implicit.sql Remove gratuitous uses of deprecated SELECT INTO 2021-01-28 14:28:41 +01:00
select_into.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
select_parallel.sql Add proper regression test for the recent SRFs-in-pathkeys problem. 2022-08-04 11:11:33 -04:00
select_views.sql Avoid locale-dependent output in select_views regression test. 2017-05-28 14:52:18 -04:00
select.sql Fix core dump in transformValuesClause when there are no columns. 2022-05-09 14:15:37 -04:00
sequence.sql Unlogged sequences 2022-04-07 16:18:00 +02:00
spgist.sql Avoid loss of code coverage with unlogged-index test cases. 2022-09-25 13:10:17 -04:00
stats_ext.sql Fix planner failure with extended statistics on partitioned tables. 2022-11-01 14:34:44 -04:00
stats.sql Fix initialization of pg_stat_get_lastscan() 2022-11-08 10:50:09 +09:00
strings.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 19:42:05 -05:00
subscription.sql Fix error handling in libpqrcv_connect() 2023-01-23 18:27:42 -08:00
subselect.sql Make subquery aliases optional in the FROM clause. 2022-07-20 09:29:42 +01:00
sysviews.sql Add system view pg_ident_file_mappings 2022-03-29 10:15:48 +09:00
tablesample.sql Fix some anomalies with NO SCROLL cursors. 2021-09-10 13:18:32 -04:00
tablespace.sql Add regression tests for ALTER MATERIALIZED VIEW with tablespaces 2022-03-19 17:28:50 +09:00
temp.sql Fix misbehavior with expression indexes on ON COMMIT DELETE ROWS tables. 2019-12-01 13:09:26 -05:00
test_setup.sql Test ALIGNOF_DOUBLE==4 compatibility under ALIGNOF_DOUBLE==8. 2022-04-22 20:20:11 -07:00
text.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
tid.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 17:50:24 -05:00
tidrangescan.sql Add TID Range Scans to support efficient scanning ranges of TIDs 2021-02-27 22:59:36 +13:00
tidscan.sql Fix bug in Tid scan. 2020-02-07 22:06:31 +09:00
time.sql Convert datetime input functions to use "soft" error reporting. 2022-12-09 16:07:49 -05:00
timestamp.sql Accept "+infinity" in date and timestamp[tz] input. 2023-01-01 14:16:07 -05:00
timestamptz.sql Accept "+infinity" in date and timestamp[tz] input. 2023-01-01 14:16:07 -05:00
timetz.sql Convert datetime input functions to use "soft" error reporting. 2022-12-09 16:07:49 -05:00
transactions.sql Introduce GUC_NO_RESET flag. 2022-09-27 11:47:12 -04:00
triggers.sql Fix tupdesc lifespan bug with AfterTriggersTableData.storeslot. 2022-09-25 17:10:58 -04:00
truncate.sql Fix TRUNCATE .. CASCADE on partitions 2020-02-07 17:09:36 -03:00
tsdicts.sql Preserve integer and float values accurately in (de)serialize_deflist. 2020-03-10 12:30:02 -04:00
tsearch.sql Fix ts_headline() to handle ORs and phrase queries more honestly. 2023-01-19 16:21:44 -05:00
tsrf.sql Fix handling of targetlist SRFs when scan/join relation is known empty. 2019-03-07 14:22:13 -05:00
tstypes.sql Convert tsqueryin and tsvectorin to report errors softly. 2022-12-27 12:00:31 -05:00
tuplesort.sql Fix some typos, grammar and style in docs and comments 2021-02-24 16:13:17 +09:00
txid.sql Introduce xid8-based functions to replace txid_XXX. 2020-04-07 12:04:32 +12:00
type_sanity.sql Move provariadic sanity check to a more appropriate place 2022-12-15 07:54:48 +01:00
typed_table.sql Suppress less info in regression tests using DROP CASCADE. 2017-08-01 16:49:23 -04:00
unicode.sql Fix buffer overrun in unicode string normalization with empty input 2021-11-11 15:00:59 +09:00
union.sql Disable anonymous record hash support except in special cases 2021-09-08 09:55:04 +02:00
updatable_views.sql Yet further fixes for multi-row VALUES lists for updatable views. 2022-10-11 18:24:14 -04:00
update.sql Fix mishandling of resjunk columns in ON CONFLICT ... UPDATE tlists. 2021-05-10 11:02:29 -04:00
uuid.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 18:03:11 -05:00
vacuum_parallel.sql Don't overlook indexes during parallel VACUUM. 2021-11-02 12:06:17 -07:00
vacuum.sql Add options to control whether VACUUM runs vac_update_datfrozenxid. 2023-01-06 14:17:25 -05:00
varchar.sql Convert a few more datatype input functions to report errors softly. 2022-12-14 19:42:05 -05:00
window.sql Add additional regression tests for select_active_windows 2023-01-07 15:24:35 +13:00
with.sql Fix inability to reference CYCLE column from inside its CTE. 2022-12-16 13:07:42 -05:00
write_parallel.sql Enable parallelism in REFRESH MATERIALIZED VIEW. 2021-03-17 15:04:17 +13:00
xid.sql Detect bad input for types xid, xid8, and cid. 2022-12-27 11:40:01 -05:00
xml.sql Convert xml_in to report errors softly. 2022-12-16 11:10:40 -05:00
xmlmap.sql Fix incorrect xmlschema output for types timetz and timestamptz. 2022-03-18 16:01:42 -04:00