Re: Autogenerate some wait events code and documentation

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: "Drouvot, Bertrand" <bertranddrouvot.pg@gmail.com>
Cc: Andres Freund <andres@anarazel.de>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-07-09T07:36:11Z
Lists: pgsql-hackers
On Sun, Jul 09, 2023 at 09:15:34AM +0200, Drouvot, Bertrand wrote:
> I also noticed that you now provide the culprit line in case of parsing
> failure (thanks for that).

Yes, that's mentioned in the commit message I quickly wrote in 0002.

>  #
> -#   "C symbol in enums" "format in the system views" "description in the docs"
> +#   "format in the system views" "description in the docs"
> 
> Should we add a note here about the impact of the "format in the system views" on
> the auto generated enum? (aka how it is generated based on its format)?

There is one, but now that I look at it WAIT_EVENT repeated twice does
not look great, so this could use "FooBarName" or equivalent:
+   # Generate the element name for the enums based on the
+   # description.  Camelcase strings like "WaitEventName"
+   # are converted to WAIT_EVENT_WAIT_EVENT_NAME.
--
Michael

Commits

  1. Add "ABI_compatibility" regions to wait_event_names.txt

  2. Remove column for wait event names in wait_event_names.txt

  3. Use more consistent names for wait event objects and types

  4. Add information about line contents on parsing failure of wait_event_names.txt

  5. Remove double quotes from the second column of wait_event_names.txt

  6. Generate automatically code and documentation related to wait events

  7. Refactor some code related to wait events "BufferPin" and "Extension"

  8. doc: Fix ordering of entries in wait event table for I/O type