From 4deb57de7dcfb66f850f16c0324731fdf3d86d09 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sat, 26 Jan 2013 13:33:24 -0500 Subject: Issue ERROR if FREEZE mode can't be honored by COPY Previously non-honored FREEZE mode was ignored. This also issues an appropriate error message based on the cause of the failure, per suggestion from Tom. Additional regression test case added. --- doc/src/sgml/ref/copy.sgml | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'doc/src') diff --git a/doc/src/sgml/ref/copy.sgml b/doc/src/sgml/ref/copy.sgml index 6a0fabc978d..2137c67cb4b 100644 --- a/doc/src/sgml/ref/copy.sgml +++ b/doc/src/sgml/ref/copy.sgml @@ -190,18 +190,14 @@ COPY { table_name [ ( VACUUM FREEZE command. This is intended as a performance option for initial data loading. Rows will be frozen only if the table being loaded has been created - in the current subtransaction, there are no cursors open and there - are no older snapshots held by this transaction. If those conditions - are not met the command will continue without error though will not - freeze rows. It is also possible in rare cases that the request - cannot be honoured for internal reasons, hence FREEZE - is more of a guideline than a hard rule. + or truncated in the current subtransaction, there are no cursors + open and there are no older snapshots held by this transaction. Note that all other sessions will immediately be able to see the data once it has been successfully loaded. This violates the normal rules - of MVCC visibility and by specifying this option the user acknowledges - explicitly that this is understood. + of MVCC visibility and users specifying should be aware of the + potential problems this might cause. -- cgit v1.2.3