Re: COPY FREEZE has no warning
От | Bruce Momjian |
---|---|
Тема | Re: COPY FREEZE has no warning |
Дата | |
Msg-id | 20130202151254.GD2371@momjian.us обсуждение исходный текст |
Ответ на | Re: COPY FREEZE has no warning (Noah Misch <noah@leadboat.com>) |
Ответы |
Re: COPY FREEZE has no warning
Re: COPY FREEZE has no warning |
Список | 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 по дате отправления: