diff options
author | Alvaro Herrera <alvherre@alvh.no-ip.org> | 2018-11-19 11:16:28 -0300 |
---|---|---|
committer | Alvaro Herrera <alvherre@alvh.no-ip.org> | 2018-11-19 11:16:28 -0300 |
commit | 5c9a5513a3967367e5fcc9237bc4146f4b24b408 (patch) | |
tree | d8acc5202d30e1307d009f3b9537cc5ab77ab2ca /doc/src | |
parent | fc47e99a157a56a92dea679a74d546e28b253bb7 (diff) | |
download | postgresql-5c9a5513a3967367e5fcc9237bc4146f4b24b408.tar.gz postgresql-5c9a5513a3967367e5fcc9237bc4146f4b24b408.zip |
Disallow COPY FREEZE on partitioned tables
This didn't actually work: COPY would fail to flush the right files, and
instead would try to flush a non-existing file, causing the whole
transaction to fail.
Cope by raising an error as soon as the command is sent instead, to
avoid a nasty later surprise. Of course, it would be much better to
make it work, but we don't have a patch for that yet, and we don't know
if we'll want to backpatch one when we do.
Reported-by: Tomas Vondra
Author: David Rowley
Reviewed-by: Amit Langote, Steve Singer, Tomas Vondra
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/perform.sgml | 4 | ||||
-rw-r--r-- | doc/src/sgml/ref/copy.sgml | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/doc/src/sgml/perform.sgml b/doc/src/sgml/perform.sgml index 262f30fd4c7..7373af860cf 100644 --- a/doc/src/sgml/perform.sgml +++ b/doc/src/sgml/perform.sgml @@ -1535,8 +1535,8 @@ SELECT * FROM x, y, a, b, c WHERE something AND somethingelse; needs to be written, because in case of an error, the files containing the newly loaded data will be removed anyway. However, this consideration only applies when - <xref linkend="guc-wal-level"/> is <literal>minimal</literal> as all commands - must write WAL otherwise. + <xref linkend="guc-wal-level"/> is <literal>minimal</literal> for + non-partitioned tables as all commands must write WAL otherwise. </para> </sect2> diff --git a/doc/src/sgml/ref/copy.sgml b/doc/src/sgml/ref/copy.sgml index 13a8b68d951..9f3c85bf7f9 100644 --- a/doc/src/sgml/ref/copy.sgml +++ b/doc/src/sgml/ref/copy.sgml @@ -224,7 +224,9 @@ COPY { <replaceable class="parameter">table_name</replaceable> [ ( <replaceable This is intended as a performance option for initial data loading. Rows will be frozen only if the table being loaded has been created or truncated in the current subtransaction, there are no cursors - open and there are no older snapshots held by this transaction. + open and there are no older snapshots held by this transaction. It is + currently not possible to perform a <command>COPY FREEZE</command> on + a partitioned table. </para> <para> Note that all other sessions will immediately be able to see the data |