Re: COPY FREEZE has no warning
От | Bruce Momjian |
---|---|
Тема | Re: COPY FREEZE has no warning |
Дата | |
Msg-id | 20130126035928.GA9274@momjian.us обсуждение исходный текст |
Ответ на | Re: COPY FREEZE has no warning (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: COPY FREEZE has no warning
|
Список | pgsql-hackers |
On Fri, Jan 25, 2013 at 05:30:58PM -0500, Tom Lane wrote: > Bruce Momjian <bruce@momjian.us> writes: > > OK, updated patch attached that throws an error with a more specific > > message. > > > > * > > * As noted above rd_newRelfilenodeSubid is not set in all cases > > * where we can apply the optimization, so in those rare cases > > ! * where we cannot honor the request. > > */ > > This sentence not complete. I kind of think the entire para visible > above could be removed, anyway. > > > ! ereport(ERROR, (errmsg("cannot perform FREEZE operation due to invalid table or transaction state"))); > > I don't find this terribly specific. It would at least be useful to > have two messages distinguishing whether the cause was invalid table > state (rd_createSubid and rd_newRelfilenodeSubid not set) or invalid > transaction state (the snapshot and portal tests). The former might > usefully be phrased as "because the table was not created or truncated > in the current transaction" and the latter as "because other actions are > in progress within the current transaction". > > I'd also suggest "cannot perform COPY FREEZE because <whatever>" rather > than using the unnecessarily vague "operation". > > Also, this is missing an errcode, which means it will report itself as > an internal error, which it ain't. It's also randomly unlike the > standard layout for ereport calls. > ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE would do for the table case, > not sure about the other. OK, that was tricky, but completed with the attached patch. Surprisingly, truncation wasn't mention in our docs, though it was used in the regression tests. I have fixed that. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. +
Вложения
В списке pgsql-hackers по дате отправления: