You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Amit Kapila
c55040ccd0
WAL Log invalidations at command end with wal_level=logical.
...
When wal_level=logical, write invalidations at command end into WAL so
that decoding can use this information.
This patch is required to allow the streaming of in-progress transactions
in logical decoding. The actual work to allow streaming will be committed
as a separate patch.
We still add the invalidations to the cache and write them to WAL at
commit time in RecordTransactionCommit(). This uses the existing
XLOG_INVALIDATIONS xlog record type, from the RM_STANDBY_ID resource
manager (see LogStandbyInvalidations for details).
So existing code relying on those invalidations (e.g. redo) does not need
to be changed.
The invalidations written at command end uses a new xlog record type
XLOG_XACT_INVALIDATIONS, from RM_XACT_ID resource manager. See
LogLogicalInvalidations for details.
These new xlog records are ignored by existing redo procedures, which
still rely on the invalidations written to commit records.
The invalidations are decoded and accumulated in top-transaction, and then
executed during replay. This obviates the need to decode the
invalidations as part of a commit record.
Bump XLOG_PAGE_MAGIC, since this introduces XLOG_XACT_INVALIDATIONS.
Author: Dilip Kumar, Tomas Vondra, Amit Kapila
Reviewed-by: Amit Kapila
Tested-by: Neha Sharma and Mahendra Singh Thalor
Discussion: https://postgr.es/m/688b0b7f-2f6c-d827-c27b-216a8e3ea700@2ndquadrant.com
6 years ago
..
amapi.h
Implement operator class parameters
6 years ago
amvalidate.h
Implement operator class parameters
6 years ago
attmap.h
Fix assorted typos
6 years ago
attnum.h
Update copyrights for 2020
6 years ago
brin.h
Update copyrights for 2020
6 years ago
brin_internal.h
Implement operator class parameters
6 years ago
brin_page.h
Update copyrights for 2020
6 years ago
brin_pageops.h
Update copyrights for 2020
6 years ago
brin_revmap.h
Update copyrights for 2020
6 years ago
brin_tuple.h
Update copyrights for 2020
6 years ago
brin_xlog.h
Update copyrights for 2020
6 years ago
bufmask.h
Update copyrights for 2020
6 years ago
clog.h
Update copyrights for 2020
6 years ago
commit_ts.h
Update copyrights for 2020
6 years ago
detoast.h
Update copyrights for 2020
6 years ago
genam.h
Implement operator class parameters
6 years ago
generic_xlog.h
Update copyrights for 2020
6 years ago
gin.h
Implement operator class parameters
6 years ago
gin_private.h
Avoid full scan of GIN indexes when possible
6 years ago
ginblock.h
Update copyrights for 2020
6 years ago
ginxlog.h
Update copyrights for 2020
6 years ago
gist.h
Implement operator class parameters
6 years ago
gist_private.h
Skip WAL for new relfilenodes, under wal_level=minimal.
6 years ago
gistscan.h
Update copyrights for 2020
6 years ago
gistxlog.h
Skip WAL for new relfilenodes, under wal_level=minimal.
6 years ago
hash.h
Get rid of trailing semicolons in C macro definitions.
6 years ago
hash_xlog.h
Update copyrights for 2020
6 years ago
heapam.h
Skip WAL for new relfilenodes, under wal_level=minimal.
6 years ago
heapam_xlog.h
Update copyrights for 2020
6 years ago
heaptoast.h
tableam: New callback relation_fetch_toast_slice.
6 years ago
hio.h
Update copyrights for 2020
6 years ago
htup.h
Update copyrights for 2020
6 years ago
htup_details.h
Update copyrights for 2020
6 years ago
itup.h
Update copyrights for 2020
6 years ago
multixact.h
Rename SLRU structures and associated LWLocks.
6 years ago
nbtree.h
Add nbtree Valgrind buffer lock checks.
6 years ago
nbtxlog.h
Adjust "root of to-be-deleted subtree" function.
6 years ago
parallel.h
Allow vacuum command to process indexes in parallel.
6 years ago
printsimple.h
Update copyrights for 2020
6 years ago
printtup.h
Update copyrights for 2020
6 years ago
relation.h
Update copyrights for 2020
6 years ago
reloptions.h
Implement operator class parameters
6 years ago
relscan.h
Update copyrights for 2020
6 years ago
rewriteheap.h
Skip WAL for new relfilenodes, under wal_level=minimal.
6 years ago
rmgr.h
…
rmgrlist.h
Add deduplication to nbtree.
6 years ago
sdir.h
Update copyrights for 2020
6 years ago
session.h
Fix typo.
6 years ago
skey.h
Update copyrights for 2020
6 years ago
slru.h
Improve management of SLRU statistics collection.
6 years ago
spgist.h
Implement operator class parameters
6 years ago
spgist_private.h
Update copyrights for 2020
6 years ago
spgxlog.h
Update copyrights for 2020
6 years ago
stratnum.h
Update copyrights for 2020
6 years ago
subtrans.h
Update copyrights for 2020
6 years ago
sysattr.h
Update copyrights for 2020
6 years ago
table.h
Update copyrights for 2020
6 years ago
tableam.h
Fix comments related to table AMs
6 years ago
timeline.h
Update copyrights for 2020
6 years ago
toast_helper.h
Introduce macros for typalign and typstorage constants.
6 years ago
toast_internals.h
Update copyrights for 2020
6 years ago
transam.h
Rename SLRU structures and associated LWLocks.
6 years ago
tsmapi.h
Update copyrights for 2020
6 years ago
tupconvert.h
Update copyrights for 2020
6 years ago
tupdesc.h
Update copyrights for 2020
6 years ago
tupdesc_details.h
Update copyrights for 2020
6 years ago
tupmacs.h
Introduce macros for typalign and typstorage constants.
6 years ago
twophase.h
Update copyrights for 2020
6 years ago
twophase_rmgr.h
Update copyrights for 2020
6 years ago
valid.h
Update copyrights for 2020
6 years ago
visibilitymap.h
Initial pgindent and pgperltidy run for v13.
6 years ago
xact.h
WAL Log invalidations at command end with wal_level=logical.
6 years ago
xlog.h
Rename wal_keep_segments to wal_keep_size.
6 years ago
xlog_internal.h
WAL Log invalidations at command end with wal_level=logical.
6 years ago
xlogarchive.h
Move routine definitions of xlogarchive.c to a new header file
6 years ago
xlogdefs.h
Update copyrights for 2020
6 years ago
xloginsert.h
Update copyrights for 2020
6 years ago
xlogreader.h
Immediately WAL-log subtransaction and top-level XID association.
6 years ago
xlogrecord.h
Immediately WAL-log subtransaction and top-level XID association.
6 years ago
xlogutils.h
Adjust walsender usage of xlogreader, simplify APIs
6 years ago