From: | tgl(at)svr1(dot)postgresql(dot)org (Tom Lane) |
---|---|
To: | pgsql-committers(at)postgresql(dot)org |
Subject: | pgsql: Give the ResourceOwner mechanism full responsibility for |
Date: | 2004-10-16 18:57:26 |
Message-ID: | 20041016185726.DAE8B32A05A@svr1.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Log Message:
-----------
Give the ResourceOwner mechanism full responsibility for releasing buffer
pins at end of transaction, and reduce AtEOXact_Buffers to an Assert
cross-check that this was done correctly. When not USE_ASSERT_CHECKING,
AtEOXact_Buffers is a complete no-op. This gets rid of an O(NBuffers)
bottleneck during transaction commit/abort, which recent testing has shown
becomes significant above a few tens of thousands of shared buffers.
Modified Files:
--------------
pgsql/src/backend/access/transam:
xact.c (r1.191 -> r1.192)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/xact.c.diff?r1=1.191&r2=1.192)
pgsql/src/backend/storage/buffer:
bufmgr.c (r1.179 -> r1.180)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/buffer/bufmgr.c.diff?r1=1.179&r2=1.180)
localbuf.c (r1.59 -> r1.60)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/buffer/localbuf.c.diff?r1=1.59&r2=1.60)
pgsql/src/backend/storage/lmgr:
proc.c (r1.154 -> r1.155)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/lmgr/proc.c.diff?r1=1.154&r2=1.155)
pgsql/src/backend/utils/resowner:
resowner.c (r1.7 -> r1.8)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/resowner/resowner.c.diff?r1=1.7&r2=1.8)
pgsql/src/include/storage:
bufmgr.h (r1.87 -> r1.88)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/storage/bufmgr.h.diff?r1=1.87&r2=1.88)
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2004-10-16 19:08:39 | pgsql: Limit NBuffers and some related values to INT_MAX / BLCKSZ, to |
Previous Message | Tom Lane | 2004-10-16 18:05:07 | pgsql: Remove BufferLocks[] array in favor of a single pointer to the |