Re: FlexLocks - Mailing list pgsql-hackers

From Kevin Grittner
Subject Re: FlexLocks
Date
Msg-id 4EC39D9B020000250004305B@gw.wicourts.gov
Whole thread Raw
In response to Re: FlexLocks  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: FlexLocks
List pgsql-hackers
Robert Haas <robertmhaas@gmail.com> wrote:
> Kevin Grittner <Kevin.Grittner@wicourts.gov> wrote:
>> Is there any way to typedef our way out of it [?]
> Well, if we just say:
> 
> typedef FlexLockId LWLockId;
> 
> ...that's about equivalent to the #define from the compiler's
> point of view.
Bummer -- I was hoping there was some equivalent to "subclassing"
that I just didn't know about.  :-(
> We could alternatively change one or the other of them to be a
> struct with one member, but I think the cure might be worse than
> the disease.  By my count, we are talking about saving perhaps as
> many as 34 lines of code changes here, and that's only if
> complicating the type handling doesn't require any changes to
> places that are untouched at present, which I suspect it would.
So I stepped through all the changes of this type, and I notice that
most of them are in areas where we've talked about likely benefits
of creating new FlexLock variants instead of staying with LWLocks;
if any of that is done (as seems likely), it further reduces the
impact from 34 lines.  If we take care of LWLockHeldByMe() as you
describe, I'll concede the FlexLockId changes.
-Kevin


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: declarations of range-vs-element <@ and @>
Next
From: Josh Berkus
Date:
Subject: Re: ISN was: Core Extensions relocation