On Thu, Jun 14, 2012 at 4:39 PM, Robert Haas <robertmhaas@gmail.com> wrote:
> On Wed, Jan 11, 2012 at 8:48 PM, Robert Haas <robertmhaas@gmail.com> wrote:
>> I've had cause, a few times this development cycle, to want to measure
>> the amount of spinning on each lwlock in the system. To that end,
>> I've found the attached patch useful. Note that if you don't define
>> LWLOCK_STATS, this changes nothing except that the return value from
>> s_lock becomes int rather than void. If you do define LWLOCK_STATS,
>> then LWLockAcquire() counts the number of pg_usleep() calls that are
>> required to acquire each LWLock, in addition to the other statistics.
>> Since this has come up for me a few times now, I'd like to proposing
>> including it in core.
>
> Well, this fell through the cracks, because I forgot to add it to the
> January CommitFest. Here it is again, rebased.
+1. It might be too awkward to add, but it would be nice to be able
to fetch the number of spins as well as number of delays (aside, it's
a bit confusing that in s_lock.c 'delay' is used both for the hardware
sleep as well as the yielding sleep).
merlin