| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | pgsql-committers(at)postgresql(dot)org |
| Subject: | pgsql: Scan the buffer pool just once, not once per fork, during relati |
| Date: | 2012-06-07 21:43:35 |
| Message-ID: | E1SckUR-0007W2-Ty@gemulon.postgresql.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | 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(-)
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2012-06-08 03:09:22 | pgsql: Revert "Wake WALSender to reduce data loss at failover for async |
| Previous Message | Peter Eisentraut | 2012-06-07 21:11:13 | pgsql: Message style improvements |