Re: COPY FREEZE has no warning

Bruce Momjian <bruce@momjian.us>

From: Bruce Momjian <bruce@momjian.us>
To: PostgreSQL-development <pgsql-hackers@postgreSQL.org>
Date: 2013-01-24T22:09:51Z
Lists: pgsql-hackers

Attachments

On Wed, Jan 23, 2013 at 02:02:46PM -0500, Bruce Momjian wrote:
> As a reminder, COPY FREEZE still does not issue any warning/notice if
> the freezing does not happen:
> 
>       Requests copying the data with rows already frozen, just as they
>       would be after running the <command>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 <literal>FREEZE</literal>
>       is more of a guideline than a hard rule.
> 
>       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.
> 
> Didn't we want to issue the user some kind of feedback?

As no one wanted to write this patch, I have developed the attached
version.

-- 
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +