Re: verify predefined LWLocks have entries in wait_event_names.txt
Nathan Bossart <nathandbossart@gmail.com>
From: Nathan Bossart <nathandbossart@gmail.com>
To: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Cc: Robert Haas <robertmhaas@gmail.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>, Michael Paquier <michael@paquier.xyz>
Date: 2024-01-05T16:42:03Z
Lists: pgsql-hackers
Thanks for reviewing. On Fri, Jan 05, 2024 at 07:39:39AM +0000, Bertrand Drouvot wrote: > Another option could be to create a sub-section for predefined LWLocks that are > part of lwlocknames.txt and then sort both list (the one in the sub-section and > the one in lwlocknames.txt). That would avoid the "must be listed in the same order" > constraint. That said, I think the way it is done in the patch is fine because > if one does not follow the constraint then the build would fail. IMHO the ordering constraint makes it easier for humans to verify the lists match. > + die "lists of predefined LWLocks in lwlocknames.txt and wait_event_names.txt do not match" > + unless $wait_event_lwlocks[$i] eq $lockname; > > What about printing $wait_event_lwlocks[$i] and $lockname in the error message? > Something like? > > " > die "lists of predefined LWLocks in lwlocknames.txt and wait_event_names.txt do not match (comparing $lockname and $wait_event_lwlocks[$i])" > unless $wait_event_lwlocks[$i] eq $lockname; > " > > I think that would give more clues for debugging purpose. Sure, I'll add something like that. I think this particular scenario is less likely, but that's not a reason to make the error message hard to decipher. -- Nathan Bossart Amazon Web Services: https://aws.amazon.com
Commits
-
Cross-check lists of predefined LWLocks.
- 5b1b9bce8449 17.0 landed
-
Remove Lock suffix from WALSummarizerLock in wait_event_names.txt
- 371b07e89449 17.0 landed
-
Drop the redundant "Lock" suffix from LWLock wait event names.
- 14a910109126 13.0 cited