Kenneth Marshall <ktm@is.rice.edu> writes:
> If the context swap storm derives from LWLock contention, maybe using
> a random order to assign buffer locks in buf_init.c would prevent
> simple adjacency of buffer allocation to cause the storm.
Good try, but no cigar ;-). The test cases I've been looking at take
only shared locks on the per-buffer locks, so that's not where the
context swaps are coming from. The swaps have to be caused by the
BufMgrLock, because that's the only exclusive lock being taken.
I did try increasing the allocated size of the spinlocks to 128 bytes
to see if it would do anything. It didn't ...
regards, tom lane