Re: COPY FREEZE has no warning
От | Bruce Momjian |
---|---|
Тема | Re: COPY FREEZE has no warning |
Дата | |
Msg-id | 20130126042858.GB9274@momjian.us обсуждение исходный текст |
Ответ на | Re: COPY FREEZE has no warning (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: COPY FREEZE has no warning
Re: COPY FREEZE has no warning |
Список | pgsql-hackers |
On Fri, Jan 25, 2013 at 11:08:56PM -0500, Tom Lane wrote: > Bruce Momjian <bruce@momjian.us> writes: > > ! ereport(ERROR, > > ! (ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE, > > ! errmsg("cannot perform FREEZE because of previous table activity in the current transaction"))); > > [ itch... ] What is "table activity"? I always thought of tables as > being rather passive objects. And anyway, isn't this backwards? What > we're complaining of is *lack* of activity. I don't see why this isn't > using the same message as the other code path, namely Well, here is an example of this message: BEGIN; TRUNCATE vistest; SAVEPOINT s1; COPY vistest FROM stdin CSV FREEZE; ERROR: cannot perform FREEZE because of previous table activity in the current transaction COMMIT; Clearly it was truncated in the same transaction, but the savepoint somehow invalidates the freeze. There is a C comment about it: * BEGIN; * TRUNCATE t; * SAVEPOINT save; * TRUNCATE t; * ROLLBACK TO save; * COPY ... I changed it to: ERROR: cannot perform FREEZE because of transaction activity after table creation or truncation -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. +
Вложения
В списке pgsql-hackers по дате отправления: