Separate snapshot management code from tuple visibility code, create a

Alvaro Herrera <alvherre@alvh.no-ip.org>

Commit: d43b085d578148f8dec2fea774912103e2f3044f
Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
Date: 2008-03-26T16:20:48Z
Releases: 8.4.0
Separate snapshot management code from tuple visibility code, create a
snapmgmt.c file for the former.  The header files have also been reorganized
in three parts: the most basic snapshot definitions are now in a new file
snapshot.h, and the also new snapmgmt.h keeps the definitions for snapmgmt.c.
tqual.h has been reduced to the bare minimum.

This patch is just a first step towards managing live snapshots within a
transaction; there is no functionality change.

Per my proposal to pgsql-patches on 20080318191940.GB27458@alvh.no-ip.org and
subsequent discussion.

Files

PathChange+/−
src/backend/access/heap/heapam.c modified +2 −1
src/backend/access/index/indexam.c modified +2 −1
src/backend/access/nbtree/nbtpage.c modified +2 −1
src/backend/access/transam/subtrans.c modified +2 −2
src/backend/access/transam/transam.c modified +2 −2
src/backend/access/transam/xact.c modified +2 −1
src/backend/catalog/catalog.c modified +2 −1
src/backend/catalog/heap.c modified +2 −1
src/backend/catalog/index.c modified +2 −1
src/backend/commands/cluster.c modified +2 −1
src/backend/commands/copy.c modified +2 −1
src/backend/commands/explain.c modified +2 −1
src/backend/commands/indexcmds.c modified +2 −1
src/backend/commands/portalcmds.c modified +2 −1
src/backend/commands/prepare.c modified +2 −1
src/backend/commands/tablecmds.c modified +2 −1
src/backend/commands/trigger.c modified +2 −1
src/backend/commands/vacuum.c modified +2 −1
src/backend/commands/variable.c modified +2 −2
src/backend/executor/functions.c modified +2 −1
src/backend/executor/nodeBitmapHeapscan.c modified +2 −1
src/backend/executor/spi.c modified +2 −1
src/backend/optimizer/util/plancat.c modified +2 −1
src/backend/storage/ipc/procarray.c modified +2 −2
src/backend/storage/large_object/inv_api.c modified +2 −1
src/backend/tcop/fastpath.c modified +2 −1
src/backend/tcop/postgres.c modified +2 −1
src/backend/tcop/pquery.c modified +2 −1
src/backend/utils/adt/ri_triggers.c modified +2 −1
src/backend/utils/adt/txid.c modified +2 −1
src/backend/utils/cache/plancache.c modified +2 −1
src/backend/utils/time/Makefile modified +2 −2
src/backend/utils/time/snapmgmt.c added +172 −0
src/backend/utils/time/tqual.c modified +1 −152
src/include/access/relscan.h modified +3 −2
src/include/storage/large_object.h modified +2 −2
src/include/storage/procarray.h modified +4 −1
src/include/utils/snapmgmt.h added +33 −0
src/include/utils/snapshot.h added +62 −0
src/include/utils/tqual.h modified +2 −63
src/pl/plpgsql/src/pl_exec.c modified +2 −1