Re: Different error messages executing CREATE TABLE or ALTER TABLE to create a column "xmin"

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Vik Reykja <vikreykja@gmail.com>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2012-01-26T16:29:38Z
Lists: pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes:
> However, I think we ought to handle
> renaming a column symmetrically to adding one.

Yeah, I was thinking the same.

> So here's a revised version of your patch that does that.

This looks reasonable to me, except that possibly the new error message
text could do with a bit more thought.  It seems randomly unlike the
normal message, and I also have a bit of logical difficulty with the
wording equating a "column" with a "column name".  The wording that
is in use in the existing CREATE TABLE case is

column name \"%s\" conflicts with a system column name

We could do worse than to use that verbatim, so as to avoid introducing
a new translatable string.  Another possibility is

column \"%s\" of relation \"%s\" already exists as a system column

Or we could keep the primary errmsg the same as it is for a normal
column and instead add a DETAIL explaining that this is a system column.

			regards, tom lane