From: Bruce Momjian Date: Mon, 19 Aug 2024 23:54:39 +0000 (-0400) Subject: doc: mention of postpostgres_fdw INSERT ON CONFLICT limitation X-Git-Tag: REL_18_BETA1~2086 X-Git-Url: http://git.postgresql.org/gitweb/?a=commitdiff_plain;h=e28a2719beeab1e3decfbaa81ebe73335e6282b1;p=postgresql.git doc: mention of postpostgres_fdw INSERT ON CONFLICT limitation Reported-by: Fujii Masao Discussion: https://postgr.es/m/47801526-d017-4c89-9f52-c02c449a139b@oss.nttdata.com Author: Fujii Masao Backpatch-through: master --- diff --git a/doc/src/sgml/postgres-fdw.sgml b/doc/src/sgml/postgres-fdw.sgml index 90969f63ca7..468724e94ef 100644 --- a/doc/src/sgml/postgres-fdw.sgml +++ b/doc/src/sgml/postgres-fdw.sgml @@ -1096,7 +1096,10 @@ postgres=# SELECT postgres_fdw_disconnect_all(); postgres_fdw can be used with remote servers dating back to PostgreSQL 8.3. Read-only capability is available - back to 8.1. A limitation however is that postgres_fdw + back to 8.1. + + + A limitation however is that postgres_fdw generally assumes that immutable built-in functions and operators are safe to send to the remote server for execution, if they appear in a WHERE clause for a foreign table. Thus, a built-in @@ -1108,6 +1111,13 @@ postgres=# SELECT postgres_fdw_disconnect_all(); optimization fence, and placing the problematic function or operator outside the sub-SELECT. + + Another limitation is that when executing INSERT + statements with an ON CONFLICT DO NOTHING clause on + a foreign table, the remote server must be running + PostgreSQL 9.5 or later, + as earlier versions do not support this feature. +