postgresql/src/test/regress/sql
Tom Lane d66bb048c3 Ensure COPY TO on an RLS-enabled table copies no more than it should.
The COPY documentation is quite clear that "COPY relation TO" copies
rows from only the named table, not any inheritance children it may
have.  However, if you enabled row-level security on the table then
this stopped being true, because the code forgot to apply the ONLY
modifier in the "SELECT ... FROM relation" query that it constructs
in order to allow RLS predicates to be attached.  Fix that.

Report and patch by Antonin Houska (comment adjustments and test case
by me).  Back-patch to all supported branches.

Discussion: https://postgr.es/m/3472.1675251957@antos
2023-03-10 13:52:44 -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 Implement ANY_VALUE aggregate 2023-02-22 09:33:07 +01:00
alter_generic.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
alter_operator.sql
alter_table.sql Fix more bugs caused by adding columns to the end of a view. 2023-03-07 18:21:53 -05:00
amutils.sql
arrays.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
async.sql
bit.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
bitmapops.sql
boolean.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
box.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
brin_bloom.sql
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 Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
circle.sql
cluster.sql Fix MAINTAIN privileges for toast tables and partitions. 2023-01-14 00:16:23 -08:00
collate.icu.utf8.sql Fix tests for non-ICU build 2023-03-10 14:27:55 +01:00
collate.linux.utf8.sql Add a test for UCS_BASIC collation 2023-03-10 11:18:08 +01:00
collate.sql Improve error checking of CREATE COLLATION options. 2021-07-18 11:08:34 +01:00
collate.windows.win1252.sql Remove unnecessary and problematic collate.windows.win1252 tests 2023-02-28 15:47:07 -05:00
combocid.sql
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
copyselect.sql psql: Show all query results by default 2022-04-04 20:00:33 +02:00
create_aggregate.sql
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 Disallow NULLS NOT DISTINCT indexes for primary keys 2023-02-24 11:09:50 +01: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 Fix various typos in code and tests 2023-02-09 14:43:53 +09:00
create_role.sql DROP ROLE regress_role_limited_admin at end of test 2023-01-26 08:14:41 -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 Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
dbsize.sql Add support for unit "B" to pg_size_bytes() 2023-03-07 20:31:16 +01:00
delete.sql
dependency.sql Add grantable MAINTAIN privilege and pg_maintain role. 2022-12-13 17:33:28 -08:00
domain.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
drop_if_exists.sql
drop_operator.sql
enum.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
equivclass.sql
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 Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
float8.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09: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 Fix some more cases of missed GENERATED-column updates. 2023-03-06 18:31:27 -05:00
geometry.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09: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 Remove SQL regression tests for GUCs related to NO_SHOW_ALL 2023-02-08 16:56:21 +09: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
horology.sql Reject combining "epoch" and "infinity" with other datetime fields. 2023-03-09 16:49:03 -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
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 Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
infinite_recurse.sql
inherit.sql Fix MULTIEXPR_SUBLINK with partitioned target tables, yet again. 2023-02-25 14:44:14 -05: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 Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
int4.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
int8.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
interval.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
join_hash.sql Increase hash_mem_multiplier default to 2.0. 2022-02-16 18:41:52 -08:00
join.sql Fix mis-handling of outer join quals generated by EquivalenceClasses. 2023-02-23 11:05:58 -05:00
json_encoding.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
json.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
jsonb_jsonpath.sql Fix jsonpath existense checking of missing variables 2023-01-12 18:16:34 +03:00
jsonb.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
jsonpath_encoding.sql
jsonpath.sql SQL JSON path enhanced numeric literals 2023-03-05 15:19:58 +01: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 Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
lock.sql Add support for security invoker views. 2022-03-22 10:28:10 +00:00
lseg.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
macaddr8.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
macaddr.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09: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 Assert failure for MERGE into a partitioned table with RLS. 2023-02-22 10:51:34 +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 Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
multirangetypes.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
mvcc.sql Fix typo in MVCC test comment 2022-08-25 10:31:20 +02:00
name.sql
namespace.sql
numeric_big.sql Improve the accuracy of numeric power() for integer exponents. 2022-10-20 10:10:17 +01:00
numeric.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
numerology.sql Allow underscores in integer and numeric constants. 2023-02-04 09:48:51 +00:00
object_address.sql Make object_address test output easier to update 2022-11-18 16:00:52 +01:00
oid.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
oidjoins.sql
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
partition_join.sql Allow left join removals and unique joins on partitioned tables 2023-01-09 17:15:08 +13:00
partition_prune.sql Allow underscores in integer and numeric constants. 2023-02-04 09:48:51 +00:00
password.sql
path.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
pg_lsn.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
plancache.sql
plpgsql.sql In plpgsql, don't preassign portal names to bound cursor variables. 2023-01-01 13:22:34 -05:00
point.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
polygon.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09: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 Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
psql_crosstab.sql
psql.sql Harden new test case against force_parallel_mode = regress. 2023-03-02 17:47:20 -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 Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
regex.sql Fix regexp misbehavior with capturing parens inside "{0}". 2021-08-24 16:37:26 -04:00
regproc.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
reindex_catalog.sql
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
rowsecurity.sql Ensure COPY TO on an RLS-enabled table copies no more than it should. 2023-03-10 13:52:44 -05:00
rowtypes.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
rules.sql Fix mishandling of OLD/NEW references in subqueries in rule actions. 2023-02-25 14:41:12 +00: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
select_into.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
select_parallel.sql Rename force_parallel_mode to debug_parallel_query 2023-02-15 21:21:59 +13:00
select_views.sql
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 flakey pg_stat_io test 2023-03-07 10:08:38 -08:00
strings.sql Avoid fetching one past the end of translate()'s "to" parameter. 2023-03-01 11:30:31 -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 Create regress_tblspc in test_setup 2023-02-11 10:03:04 -08:00
temp.sql
test_setup.sql Create regress_tblspc in test_setup 2023-02-11 10:03:04 -08:00
text.sql Rearrange core regression tests to reduce cross-script dependencies. 2022-02-08 15:30:38 -05:00
tid.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
tidrangescan.sql
tidscan.sql
time.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
timestamp.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
timestamptz.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
timetz.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
transactions.sql Introduce GUC_NO_RESET flag. 2022-09-27 11:47:12 -04:00
triggers.sql Avoid failure when altering state of partitioned foreign-key triggers. 2023-03-04 13:32:35 -05:00
truncate.sql
tsdicts.sql
tsearch.sql Fix ts_headline() to handle ORs and phrase queries more honestly. 2023-01-19 16:21:44 -05:00
tsrf.sql
tstypes.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
tuplesort.sql
txid.sql
type_sanity.sql Move provariadic sanity check to a more appropriate place 2022-12-15 07:54:48 +01:00
typed_table.sql
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 Fix multi-row DEFAULT handling for INSERT ... SELECT rules. 2023-02-23 10:53:01 +00:00
update.sql Fix mishandling of resjunk columns in ON CONFLICT ... UPDATE tlists. 2021-05-10 11:02:29 -04:00
uuid.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
vacuum_parallel.sql Don't overlook indexes during parallel VACUUM. 2021-11-02 12:06:17 -07:00
vacuum.sql Add PROCESS_MAIN to VACUUM 2023-03-06 16:41:05 +09:00
varchar.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
window.sql Teach planner about more monotonic window functions 2023-01-27 16:08:41 +13:00
with.sql Rename force_parallel_mode to debug_parallel_query 2023-02-15 21:21:59 +13:00
write_parallel.sql
xid.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
xml.sql Rework pg_input_error_message(), now renamed pg_input_error_info() 2023-02-28 08:04:13 +09:00
xmlmap.sql Fix incorrect xmlschema output for types timetz and timestamptz. 2022-03-18 16:01:42 -04:00