On Thu, 2009-05-14 at 13:28 -0400, Tom Lane wrote:
> Simon Riggs <simon@2ndQuadrant.com> writes:
> > In a thread on -perform it has been observed that our Read-Only
> > scalability is not as good as it could be. One problem being that we
> > need to scan the whole of the ProcArray to derive a snapshot, which
> > becomes the dominant task with many users.
>
> GetSnapshotData doesn't take an exclusive lock. Neither does start or
> end of a read-only transaction. AFAIK there is no reason, and certainly
> no shred of experimental evidence, to think that ProcArrayLock
> contention is the bottleneck for read-only scenarios.
I agree completely; I didn't mention the ProcArrayLock at all...
I did mention scanning the procarray itself, which is likely too big to
fit in on-chip cache and so must be re-read from main RAM each time.
-- Simon Riggs www.2ndQuadrant.comPostgreSQL Training, Services and Support