Give the ResourceOwner mechanism full responsibility for releasing buffer

Tom Lane <tgl@sss.pgh.pa.us>

Commit: fdd13f156814f81732c188788ab1b7b14c59f4da
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2004-10-16T18:57:26Z
Releases: 8.0.0
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.

Files