pgsql: Modify BufferGetPage() to prepare for "snapshot too old" feature

From: Kevin Grittner <kgrittn(at)postgresql(dot)org>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Modify BufferGetPage() to prepare for "snapshot too old" feature
Date: 2016-04-08 19:45:45
Message-ID: E1aocLh-0006C6-2S@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

Modify BufferGetPage() to prepare for "snapshot too old" feature

This patch is a no-op patch which is intended to reduce the chances
of failures of omission once the functional part of the "snapshot
too old" patch goes in. It adds parameters for snapshot, relation,
and an enum to specify whether the snapshot age check needs to be
done for the page at this point. This initial patch passes NULL
for the first two new parameters and BGP_NO_SNAPSHOT_TEST for the
third. The follow-on patch will change the places where the test
needs to be made.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/8b65cf4c5edabdcae45ceaef7b9ac236879aae50

Modified Files
--------------
contrib/bloom/blinsert.c | 3 +-
contrib/bloom/blscan.c | 2 +-
contrib/bloom/blutils.c | 8 ++-
contrib/bloom/blvacuum.c | 2 +-
contrib/pageinspect/btreefuncs.c | 8 ++-
contrib/pageinspect/rawpage.c | 4 +-
contrib/pg_visibility/pg_visibility.c | 4 +-
contrib/pgstattuple/pgstatapprox.c | 2 +-
contrib/pgstattuple/pgstatindex.c | 6 +-
contrib/pgstattuple/pgstattuple.c | 12 ++--
src/backend/access/brin/brin.c | 15 +++--
src/backend/access/brin/brin_pageops.c | 52 +++++++++-----
src/backend/access/brin/brin_revmap.c | 18 +++--
src/backend/access/brin/brin_xlog.c | 16 ++---
src/backend/access/gin/ginbtree.c | 68 ++++++++++++-------
src/backend/access/gin/gindatapage.c | 18 ++---
src/backend/access/gin/ginentrypage.c | 18 +++--
src/backend/access/gin/ginfast.c | 22 +++---
src/backend/access/gin/ginget.c | 58 +++++++++-------
src/backend/access/gin/gininsert.c | 6 +-
src/backend/access/gin/ginutil.c | 12 ++--
src/backend/access/gin/ginvacuum.c | 29 ++++----
src/backend/access/gin/ginxlog.c | 34 +++++-----
src/backend/access/gist/gist.c | 48 ++++++++-----
src/backend/access/gist/gistbuild.c | 14 ++--
src/backend/access/gist/gistget.c | 4 +-
src/backend/access/gist/gistutil.c | 6 +-
src/backend/access/gist/gistvacuum.c | 6 +-
src/backend/access/gist/gistxlog.c | 8 +--
src/backend/access/hash/hash.c | 16 +++--
src/backend/access/hash/hashinsert.c | 11 +--
src/backend/access/hash/hashovfl.c | 30 +++++----
src/backend/access/hash/hashpage.c | 21 +++---
src/backend/access/hash/hashsearch.c | 17 +++--
src/backend/access/hash/hashutil.c | 2 +-
src/backend/access/heap/heapam.c | 108 +++++++++++++++++-------------
src/backend/access/heap/hio.c | 27 +++++---
src/backend/access/heap/pruneheap.c | 12 ++--
src/backend/access/heap/visibilitymap.c | 21 +++---
src/backend/access/nbtree/nbtinsert.c | 47 +++++++------
src/backend/access/nbtree/nbtpage.c | 78 ++++++++++-----------
src/backend/access/nbtree/nbtree.c | 2 +-
src/backend/access/nbtree/nbtsearch.c | 44 +++++++-----
src/backend/access/nbtree/nbtutils.c | 4 +-
src/backend/access/nbtree/nbtxlog.c | 37 +++++-----
src/backend/access/spgist/spgdoinsert.c | 39 ++++++-----
src/backend/access/spgist/spginsert.c | 12 ++--
src/backend/access/spgist/spgscan.c | 9 +--
src/backend/access/spgist/spgutils.c | 19 ++++--
src/backend/access/spgist/spgvacuum.c | 13 ++--
src/backend/access/spgist/spgxlog.c | 50 +++++++-------
src/backend/access/transam/generic_xlog.c | 20 ++++--
src/backend/access/transam/xloginsert.c | 8 +--
src/backend/access/transam/xlogutils.c | 8 ++-
src/backend/catalog/index.c | 4 +-
src/backend/commands/analyze.c | 2 +-
src/backend/commands/sequence.c | 12 ++--
src/backend/commands/trigger.c | 2 +-
src/backend/commands/vacuumlazy.c | 12 ++--
src/backend/executor/nodeBitmapHeapscan.c | 4 +-
src/backend/executor/nodeSamplescan.c | 4 +-
src/backend/storage/buffer/bufmgr.c | 4 +-
src/backend/storage/freespace/freespace.c | 29 +++++---
src/backend/storage/freespace/fsmpage.c | 2 +-
src/include/storage/bufmgr.h | 24 ++++++-
65 files changed, 735 insertions(+), 522 deletions(-)

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Stephen Frost 2016-04-08 19:54:56 Re: [COMMITTERS] pgsql: CREATE INDEX ... INCLUDING (column[, ...])
Previous Message Tom Lane 2016-04-08 19:22:15 Re: pgsql: CREATE INDEX ... INCLUDING (column[, ...])

Browse pgsql-hackers by date

  From Date Subject
Next Message Stephen Frost 2016-04-08 19:54:56 Re: [COMMITTERS] pgsql: CREATE INDEX ... INCLUDING (column[, ...])
Previous Message Alvaro Herrera 2016-04-08 19:41:14 Re: [patch] Proposal for \crosstabview in psql