postgresql/src/include/storage
Tom Lane bb446b689b Support synchronization of snapshots through an export/import procedure.
A transaction can export a snapshot with pg_export_snapshot(), and then
others can import it with SET TRANSACTION SNAPSHOT.  The data does not
leave the server so there are not security issues.  A snapshot can only
be imported while the exporting transaction is still running, and there
are some other restrictions.

I'm not totally convinced that we've covered all the bases for SSI (true
serializable) mode, but it works fine for lesser isolation modes.

Joachim Wieland, reviewed by Marko Tiikkaja, and rather heavily modified
by Tom Lane
2011-10-22 18:23:30 -04:00
..
backendid.h pgindent run before PG 9.1 beta 1. 2011-04-10 11:42:00 -04:00
barrier.h Fix typo. 2011-10-08 11:04:07 +03:00
block.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
buf.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
buf_internals.h pgindent run before PG 9.1 beta 1. 2011-04-10 11:42:00 -04:00
buffile.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
bufmgr.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
bufpage.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
copydir.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
fd.h Use "transient" files for blind writes, take 2 2011-06-10 13:43:02 -04:00
freespace.h Remove unnecessary #include references, per pgrminclude script. 2011-09-01 10:04:27 -04:00
fsm_internals.h Remove unnecessary #include references, per pgrminclude script. 2011-09-01 10:04:27 -04:00
indexfsm.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
ipc.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
item.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
itemid.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
itemptr.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
large_object.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
latch.h Documentation improvement and minor code cleanups for the latch facility. 2011-08-09 15:30:45 -04:00
lmgr.h Create VXID locks "lazily" in the main lock table. 2011-08-04 12:38:33 -04:00
lock.h Remove all "traces" of trace_userlocks, because userlocks were removed 2011-10-13 19:59:57 -04:00
lwlock.h Efficient transaction-controlled synchronous replication. 2011-03-06 22:49:16 +00:00
off.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
pg_sema.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
pg_shmem.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
pmsignal.h Introduce a pipe between postmaster and each backend, which can be used to 2011-07-08 18:44:07 +03:00
pos.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
predicate.h Support synchronization of snapshots through an export/import procedure. 2011-10-22 18:23:30 -04:00
predicate_internals.h SSI has a race condition, where the order of commit sequence numbers of 2011-07-07 23:26:34 +03:00
proc.h Move Timestamp/Interval typedefs and basic macros into datatype/timestamp.h. 2011-09-09 13:23:41 -04:00
procarray.h Support synchronization of snapshots through an export/import procedure. 2011-10-22 18:23:30 -04:00
procsignal.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
reinit.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
relfilenode.h pgindent run before PG 9.1 beta 1. 2011-04-10 11:42:00 -04:00
s_lock.h Use a non-locking test in TAS_SPIN() on all IA64 platforms. 2011-08-29 13:18:44 -04:00
shmem.h Increase SHMEM_INDEX_SIZE from 32 to 64. We're currently at 40 entries in 2011-03-31 13:37:01 +03:00
sinval.h Revise sinval code to remove no-longer-used tuple TID from inval messages. 2011-08-16 19:27:46 -04:00
sinvaladt.h Create VXID locks "lazily" in the main lock table. 2011-08-04 12:38:33 -04:00
smgr.h Remove unnecessary #include references, per pgrminclude script. 2011-09-01 10:04:27 -04:00
spin.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
standby.h Clean up the #include mess a little. 2011-09-04 01:13:16 -04:00