postgresql/src/include/nodes
Alexander Korotkov 0f5ca02f53 Implement waiting for given lsn at transaction start
This commit adds following optional clause to BEGIN and START TRANSACTION
commands.

  WAIT FOR LSN lsn [ TIMEOUT timeout ]

New clause pospones transaction start till given lsn is applied on standby.
This clause allows user be sure, that changes previously made on primary would
be visible on standby.

New shared memory struct is used to track awaited lsn per backend.  Recovery
process wakes up backend once required lsn is applied.

Author: Ivan Kartyshov, Anna Akenteva
Reviewed-by: Craig Ringer, Thomas Munro, Robert Haas, Kyotaro Horiguchi
Reviewed-by: Masahiko Sawada, Ants Aasma, Dmitry Ivanov, Simon Riggs
Reviewed-by: Amit Kapila, Alexander Korotkov
Discussion: https://postgr.es/m/0240c26c-9f84-30ea-fca9-93ab2df5f305%40postgrespro.ru
2020-04-07 23:51:10 +03:00
..
bitmapset.h Move bitmap_hash and bitmap_match to bitmapset.c. 2020-02-24 17:17:43 +05:30
execnodes.h Support FETCH FIRST WITH TIES 2020-04-07 16:22:13 -04:00
extensible.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
lockoptions.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
makefuncs.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
memnodes.h Revert "Specialize MemoryContextMemAllocated()." 2020-03-19 12:21:50 -07:00
nodeFuncs.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
nodes.h Implement waiting for given lsn at transaction start 2020-04-07 23:51:10 +03:00
params.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
parsenodes.h Implement waiting for given lsn at transaction start 2020-04-07 23:51:10 +03:00
pathnodes.h Support FETCH FIRST WITH TIES 2020-04-07 16:22:13 -04:00
pg_list.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
plannodes.h Support FETCH FIRST WITH TIES 2020-04-07 16:22:13 -04:00
primnodes.h Reconsider the representation of join alias Vars. 2020-01-09 11:56:59 -05:00
print.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
readfuncs.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
replnodes.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
supportnodes.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
tidbitmap.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
value.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00