diff options
author | Alvaro Herrera | 2022-10-15 17:24:26 +0000 |
---|---|---|
committer | Alvaro Herrera | 2022-10-15 17:24:26 +0000 |
commit | cba4e78f3599f7edc3fb53d1b094f037fbb8158a (patch) | |
tree | e25faddf0e60731a5bda39596a31ccad2728326e /contrib/postgres_fdw/sql | |
parent | 1054c604bcdbae5de42beab2f60da7b0067cd4bb (diff) |
Disallow MERGE cleanly for foreign partitions
While directly targetting a foreign table with MERGE was already
expressly forbidden, we failed to catch the case of a partitioned table
that has a foreign table as a partition; and the result if you try is an
incomprehensible error. Fix that by adding a specific check.
Backpatch to 15.
Reported-by: Tatsuhiro Nakamori <bt22nakamorit@oss.nttdata.com>
Discussion: https://postgr.es/m/bt22nakamorit@oss.nttdata.com
Diffstat (limited to 'contrib/postgres_fdw/sql')
-rw-r--r-- | contrib/postgres_fdw/sql/postgres_fdw.sql | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/contrib/postgres_fdw/sql/postgres_fdw.sql b/contrib/postgres_fdw/sql/postgres_fdw.sql index 1962051e541..b0dbb41fb55 100644 --- a/contrib/postgres_fdw/sql/postgres_fdw.sql +++ b/contrib/postgres_fdw/sql/postgres_fdw.sql @@ -2207,6 +2207,10 @@ select tableoid::regclass, * FROM remp2; delete from itrtest; +-- MERGE ought to fail cleanly +merge into itrtest using (select 1, 'foo') as source on (true) + when matched then do nothing; + create unique index loct1_idx on loct1 (a); -- DO NOTHING without an inference specification is supported |