pgsql: snapshot scalability: Move PGXACT->vacuumFlags to ProcGlobal->va

Started by Andres Freundalmost 6 years ago1 messagescomitters
Jump to latest
#1Andres Freund
andres@anarazel.de

snapshot scalability: Move PGXACT->vacuumFlags to ProcGlobal->vacuumFlags.

Similar to the previous commit this increases the chance that data
frequently needed by GetSnapshotData() stays in l2 cache. As we now
take care to not unnecessarily write to ProcGlobal->vacuumFlags, there
should be very few modifications to the ProcGlobal->vacuumFlags array.

Author: Andres Freund <andres@anarazel.de>
Reviewed-By: Robert Haas <robertmhaas@gmail.com>
Reviewed-By: Thomas Munro <thomas.munro@gmail.com>
Reviewed-By: David Rowley <dgrowleyml@gmail.com>
Discussion: /messages/by-id/20200301083601.ews6hz5dduc3w2se@alap3.anarazel.de

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/5788e258bb26495fab65ff3aa486268d1c50b123

Modified Files
--------------
src/backend/access/transam/twophase.c | 2 +-
src/backend/commands/vacuum.c | 5 ++-
src/backend/postmaster/autovacuum.c | 6 +--
src/backend/replication/logical/logical.c | 3 +-
src/backend/replication/slot.c | 3 +-
src/backend/storage/ipc/procarray.c | 66 ++++++++++++++++++++-----------
src/backend/storage/lmgr/deadlock.c | 4 +-
src/backend/storage/lmgr/proc.c | 16 +++++---
src/include/storage/proc.h | 12 +++++-
9 files changed, 75 insertions(+), 42 deletions(-)