postgresql/contrib/test_decoding/sql
Amit Kapila e35705f549 Fix toast rewrites in logical decoding.
Commit 325f2ec555 introduced pg_class.relwrite to skip operations on
tables created as part of a heap rewrite during DDL. It links such
transient heaps to the original relation OID via this new field in
pg_class but forgot to do anything about toast tables. So, logical
decoding was not able to skip operations on internally created toast
tables. This leads to an error when we tried to decode the WAL for the
next operation for which it appeared that there is a toast data where
actually it didn't have any toast data.

To fix this, we set pg_class.relwrite for internally created toast tables
as well which allowed skipping operations on them during logical decoding.

Author: Bertrand Drouvot
Reviewed-by: David Zhang, Amit Kapila
Backpatch-through: 11, where it was introduced
Discussion: https://postgr.es/m/b5146fb1-ad9e-7d6e-f980-98ed68744a7c@amazon.com
2021-08-25 09:32:56 +05:30
..
binary.sql test_decoding: Protect against rare spurious test failures. 2015-09-22 15:39:46 +02:00
ddl.sql Stop using spelling "nonexistant". 2019-06-08 10:12:26 -07:00
decoding_in_xact.sql Collection of typo fixes. 2015-05-20 16:56:22 +03:00
decoding_into_rel.sql Fix crash when logical decoding is invoked from a PL function. 2017-10-06 19:18:58 -04:00
messages.sql Add required database and origin filtering for logical messages. 2016-04-13 17:38:54 -07:00
permissions.sql Establish conventions about global object names used in regression tests. 2016-07-17 18:42:43 -04:00
prepared.sql Add skip-empty-xacts option to test_decoding for use in the regression tests. 2014-09-01 15:59:44 +02:00
replorigin.sql Fix regression tests to use only global names beginning with "regress_". 2019-06-29 11:09:03 -04:00
rewrite.sql Fix regression tests to use only global names beginning with "regress_". 2019-06-29 11:09:03 -04:00
slot.sql Add facility to copy replication slots 2019-04-05 18:05:18 -03:00
spill.sql Make contrib/test_decoding regression tests safe for CZ locale. 2016-11-21 20:39:28 -05:00
time.sql logical decoding: fix decoding of a commit's commit time. 2016-03-02 23:42:21 -08:00
toast.sql Fix toast rewrites in logical decoding. 2021-08-25 09:32:56 +05:30
truncate.sql Force synchronous commit to be enabled for all test_decoding tests. 2018-10-10 13:53:02 -07:00
xact.sql Don't propagate a null subtransaction snapshot up to parent transaction. 2016-08-07 13:15:55 -04:00