pgsql: Scan the buffer pool just once, not once per fork, during relati - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Scan the buffer pool just once, not once per fork, during relati
Date
Msg-id E1SckUR-0007W2-Ty@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Scan the buffer pool just once, not once per fork, during relation drop.

This provides a speedup of about 4X when NBuffers is large enough.
There is also a useful reduction in sinval traffic, since we
only do CacheInvalidateSmgr() once not once per fork.

Simon Riggs, reviewed and somewhat revised by Tom Lane

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/ece01aae479227d9836294b287d872c5a6146a11

Modified Files
--------------
src/backend/access/transam/twophase.c |    6 +---
src/backend/access/transam/xact.c     |    8 +---
src/backend/catalog/storage.c         |    6 +---
src/backend/storage/buffer/bufmgr.c   |   42 +++++++++++++++++++++-
src/backend/storage/buffer/localbuf.c |   40 ++++++++++++++++++++
src/backend/storage/smgr/smgr.c       |   65 +++++++++++++++++++++++++++++++--
src/include/storage/buf_internals.h   |    1 +
src/include/storage/bufmgr.h          |    1 +
src/include/storage/smgr.h            |    4 +-
9 files changed, 150 insertions(+), 23 deletions(-)


pgsql-committers by date:

Previous
From: Peter Eisentraut
Date:
Subject: pgsql: Documentation spell and markup checking
Next
From: Tom Lane
Date:
Subject: pgsql: Revert "Wake WALSender to reduce data loss at failover for async