Robert Haas <robertmhaas@gmail.com> writes:
> On Mon, Jan 7, 2013 at 3:43 PM, Alvaro Herrera <alvherre@2ndquadrant.com> wrote:
>> I checked this patch. It needed a rebase for the changes to return
>> OIDs. Attached patch applies to current HEAD. In general this looks
>> good, with one exception: it's using getObjectDescriptionOids() to build
>> the messages to complain in case the object already exists in the
>> current schema, which results in diffs like this:
>>
>> -ERROR: event trigger "regress_event_trigger2" already exists
>> +ERROR: event trigger regress_event_trigger2 already exists
>>
>> I don't know how tense we are about keeping the quotes, but I fear there
>> would be complaints because it took us lots of sweat, blood and tears to
>> get where we are now.
>>
>> If this is considered a problem, I think the way to fix it is to have a
>> getObjectDescriptionOids() variant that quotes the object name in the
>> output.
> This sort of thing has been rejected repeatedly in the past on
> translation grounds:
Yes. I'm surprised Alvaro isn't well aware of the rules against trying
to build error messages out of sentence fragments: see first item under
http://www.postgresql.org/docs/devel/static/nls-programmer.html#NLS-GUIDELINES
Presence or absence of quotes is the very least of this code's i18n
problems.
If we had no other choice, we might consider a workaround such as that
suggested in "Assembling Error Messages"
http://www.postgresql.org/docs/devel/static/error-style-guide.html#AEN98605
but frankly I'm not convinced that this patch is attractive enough to
justify a degradation in message readability.
regards, tom lane