Re: autogenerating error code lists (was Re: [COMMITTERS] pgsql: Add foreign data wrapper error code values for SQL/MED.)

Robert Haas <robertmhaas@gmail.com>

From: Robert Haas <robertmhaas@gmail.com>
To: Jan Urbański <wulczer@wulczer.org>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers@postgresql.org, Shigeru HANADA <hanada@metrosystems.co.jp>
Date: 2011-01-30T22:08:12Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Add foreign data wrapper error code values for SQL/MED.

Attachments

On Wed, Jan 12, 2011 at 5:10 PM, Jan Urbański <wulczer@wulczer.org> wrote:
> On 12/01/11 19:57, Jan Urbański wrote:
>> On 11/01/11 21:21, Jan Urbański wrote:
>>> On 11/01/11 18:59, Tom Lane wrote:
>>>> =?UTF-8?B?SmFuIFVyYmHFhHNraQ==?= <wulczer@wulczer.org> writes:
>>>>> On 11/01/11 17:11, Tom Lane wrote:
>>>> Peter would probably be a better person than me to answer that, but I
>>>> imagine that what you want is similar to what src/backend/Makefile does
>>>> for parser/gram.h, only applied at the src/ level or maybe even the
>>>> root.
>>
>>> And actually, if I change my rule to read:
>>>
>>> $(SUBDIRS:%=all-%-recurse): $(top_builddir)/src/include/utils/errcodes.h
>>>
>>> it works. Now whether that's acceptable or not is another thing entirely...
>>
>> And so I came up with three patches to make errcodes.h, plerrcodes.h and
>> errcodes.sgml (respectively) generated files.
>
> Darn, forgot about MSVC again. See
> http://archives.postgresql.org/message-id/4D2DF996.9000100@wulczer.org
> for details on how this works.
>
> Attached are the previous 3 patches and a fourth one that adds MSVC support.

I think these look good.  I'm not sure there's any value in stripping
the duplicates out of plerrcodes.h, though, even if they were
undocumented:

-	"array_element_error", ERRCODE_ARRAY_ELEMENT_ERROR
-	"datetime_value_out_of_range", ERRCODE_DATETIME_VALUE_OUT_OF_RANGE
-	"undefined_cursor", ERRCODE_UNDEFINED_CURSOR
-	"undefined_database", ERRCODE_UNDEFINED_DATABASE
-	"undefined_pstatement", ERRCODE_UNDEFINED_PSTATEMENT
-	"undefined_schema", ERRCODE_UNDEFINED_SCHEMA

I'm attaching a few other proposed adjustments.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company