Subject: Re: lwlocknames.h beautification attempt

From: Gurjeet Singh <[email-masked]>
Date: Sat, 1 Mar 2025 22:35:12 -0800

On Sat, Mar 1, 2025 at 10:26 PM Tom Lane <[email-masked]> wrote:
>
> Gurjeet Singh <[email-masked]> writes:
> > I propose the following change to the generation script,
> > generate-lwlocknames.pl
> > ...
> > which produces the lock names in this format
>
> > #define ShmemIndexLock                 (&MainLWLockArray[1].lock)
> > #define OidGenLock                     (&MainLWLockArray[2].lock)
> > #define XidGenLock                     (&MainLWLockArray[3].lock)
> > #define ProcArrayLock                  (&MainLWLockArray[4].lock)
> > #define SInvalReadLock                 (&MainLWLockArray[5].lock)
>
> This looks reasonably in line with project style ...

Should I create a commitfest entry for this patch, or is it
uncontroversial enough and small enough to not warrant that?

> > Yet another format, which I prefer, can be achieved by right-aligning the
> > lock names.
>
> > #define                 ShmemIndexLock (&MainLWLockArray[1].lock)
> > #define                     OidGenLock (&MainLWLockArray[2].lock)
> > #define                     XidGenLock (&MainLWLockArray[3].lock)
> > #define                  ProcArrayLock (&MainLWLockArray[4].lock)
> > #define                 SInvalReadLock (&MainLWLockArray[5].lock)
>
> ... but that doesn't.  I challenge you to provide even one example
> of that layout in our source tree, or to explain why it's better.

I haven't seen this style in any other project, let alone in Postgres. I
just mentioned it since I personally liked it slightly better after
trying a couple of different styles, because of the aligned suffix in
the lock names.

Best regards,
Gurjeet
http://Gurje.et

---

From: Tom Lane <[email-masked]>
Date: Sun, 02 Mar 2025 02:00:33 -0500

> uncontroversial enough and small enough to not warrant that?

The controversy would be more about whether it's worth bothering
with.  In the past we've taken some care to ensure that generated
files would pass pgindent's ideas of correct formatting, but
not more than that.  AFAICT from some quick tests, pgindent has
no opinions about layout of #define lines.

			regards, tom lane