Re: COPY FREEZE has no warning - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: COPY FREEZE has no warning
Date
Msg-id 20130202151254.GD2371@momjian.us
Whole thread Raw
In response to Re: COPY FREEZE has no warning  (Noah Misch <noah@leadboat.com>)
Responses Re: COPY FREEZE has no warning
Re: COPY FREEZE has no warning
List pgsql-hackers
On Sat, Feb  2, 2013 at 09:51:13AM -0500, Noah Misch wrote:
> > OK, so, should we change the error message:
> > 
> >     cannot perform FREEZE because of transaction activity after table
> >     creation or truncation
> > 
> > to
> > 
> >     cannot perform FREEZE because the table was not created or
> >     truncated in the current subtransaction
> > 
> > or do we need to keep the "transaction activity" weasel wording because
> > of the second case you listed above?  I am suspecting the later.
> 
> Let's touch on the exception in passing by using the phrase "last truncated",
> giving this wording for both the second and the third COPY FREEZE error sites:
> 
>     cannot perform FREEZE because the table was not created or last
>     truncated in the current subtransaction

Well, so you are saying that there really isn't any use-visible logic
for those messages to be different, i.e. that the transaction id can be
set to invalid even if we created/truncated in the same transaction, but
not the same subtransaction?  

The comparisons that trigger the two messages are:
if (cstate->rel->rd_createSubid != InvalidSubTransactionId ||    cstate->rel->rd_newRelfilenodeSubid !=
InvalidSubTransactionId)

andif (cstate->rel->rd_createSubid != GetCurrentSubTransactionId() ||    cstate->rel->rd_newRelfilenodeSubid !=
GetCurrentSubTransactionId())

The first comparison is creation, the second, truncation.

Please confirm and I will make the change, or you can.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + It's impossible for everything to be true. +



pgsql-hackers by date:

Previous
From: Noah Misch
Date:
Subject: Re: COPY FREEZE has no warning
Next
From: Vlad Bailescu
Date:
Subject: Re: Turning auto-analyze off (was Re: [GENERAL] Unusually high IO for autovacuum worker)