Log Message:
-----------
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.
Modified Files:
--------------
pgsql/src/backend/access/transam:
clog.c (r1.34 -> r1.35)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/clog.c.diff?r1=1.34&r2=1.35)
multixact.c (r1.13 -> r1.14)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/multixact.c.diff?r1=1.13&r2=1.14)
slru.c (r1.31 -> r1.32)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/slru.c.diff?r1=1.31&r2=1.32)
subtrans.c (r1.13 -> r1.14)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/subtrans.c.diff?r1=1.13&r2=1.14)
pgsql/src/include/access:
slru.h (r1.15 -> r1.16)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/slru.h.diff?r1=1.15&r2=1.16)
---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster