]> granicus.if.org Git - postgresql/commit
Arrange for read-only accesses to SLRU page buffers to take only a shared
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 6 Dec 2005 18:10:06 +0000 (18:10 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 6 Dec 2005 18:10:06 +0000 (18:10 +0000)
commita615acf555c0e9ea6ed1c5398d14b81ff2179e6c
tree553e5845c030e029e955db1830eed3f8f695a09e
parent953208a34cbb7585ed4ae782141052461d35739b
Arrange for read-only accesses to SLRU page buffers to take only a shared
lock, not exclusive, if the desired page is already in memory.  This can
be demonstrated to be a significant win on the pg_subtrans cache when there
is a large window of open transactions.  It should be useful for pg_clog
as well.  I didn't try to make GetMultiXactIdMembers() use the code, as
that would have taken some restructuring, and what with the local cache
for multixact contents it probably wouldn't really make a difference.
Per my recent proposal.
src/backend/access/transam/clog.c
src/backend/access/transam/multixact.c
src/backend/access/transam/slru.c
src/backend/access/transam/subtrans.c
src/include/access/slru.h