From: | Michael Paquier <michael(at)paquier(dot)xyz> |
---|---|
To: | Andres Freund <andres(at)anarazel(dot)de> |
Cc: | "Drouvot, Bertrand" <bertranddrouvot(dot)pg(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Autogenerate some wait events code and documentation |
Date: | 2023-07-09 04:32:47 |
Message-ID: | ZKo4b1bDI5+FoTex@paquier.xyz |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Fri, Jul 07, 2023 at 01:49:24PM +0900, Michael Paquier wrote:
> Hmm. If we go down this road I would make the choice of simplicity
> and remove entirely a column, then, generating the snakecase from the
> camelcase or vice-versa (say like a $string =~ s/([a-z]+)/$1_/g;),
> even if it means having slightly incompatible strings showing to the
> users. And I'd rather minimize the number of exceptions we need to
> handle in this automation (aka no exception rules for some keywords
> like "SSL" or "WAL", etc.).
After pondering more about that, the attached patch set does exactly
that. Patch 0001 includes an update of the wait event names so as
these are more consistent with the enum elements generated. With this
change, users can apply lower() or upper() across monitoring queries
and still get the same results as before. An exception was the
message queue events, which the enums used "MQ" but the event names
used "MessageQueue", but this concerns only four lines of code in the
backend. The newly-generated enum elements match with the existing
ones, except for MQ.
Patch 0002 introduces a set of simplifications for the format of
wait_event_names.txt:
- Removal of the first column for the enums.
- Removal of the quotes for the event name. We have a single keyword
for these, so that's kind of annoying to cope with that for new
entries.
- Build of the enum elements using the event names, by applying a
rebuild as simple as that:
+ $waiteventenumname =~ s/([a-z])([A-Z])/$1_$2/g;
+ $waiteventenumname = uc($waiteventenumname);
Thoughts?
--
Michael
Attachment | Content-Type | Size |
---|---|---|
0001-Rename-wait-events-with-more-consistent-camelcase-st.patch | text/x-diff | 19.0 KB |
0002-Simplify-format-of-wait_event_names.txt.patch | text/x-diff | 53.0 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Nathan Bossart | 2023-07-09 04:47:08 | Re: Preventing non-superusers from altering session authorization |
Previous Message | David Rowley | 2023-07-09 04:17:03 | Re: Check lateral references within PHVs for memoize cache keys |