pgsql: Fix fetching default toast value during decoding of in-progress - Mailing list pgsql-committers

From Amit Kapila
Subject pgsql: Fix fetching default toast value during decoding of in-progress
Date
Msg-id E1sxktF-002XJY-ME@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix fetching default toast value during decoding of in-progress transactions.

During logical decoding of in-progress transactions, we perform the toast
table scan while fetching the default toast value for an attribute. We
forgot to initialize the flag during this scan to indicate that the system
table scan is in progress. We need this flag to ensure that during logical
decoding we never directly access the tableam or heap APIs because we check
for concurrent aborts only in systable_* APIs.

Reported-by: Alexander Lakhin
Author: Takeshi Ideriha, Hou Zhijie
Reviewed-by: Amit Kapila, Hou Zhijie
Backpatch-through: 14
Discussion: https://postgr.es/m/18641-6687273b7f15269d@postgresql.org

Branch
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/8175a7d11f70589f6b44e28a8dd804f7542d0bbf

Modified Files
--------------
contrib/test_decoding/expected/stream.out | 20 ++++++++++++++++++++
contrib/test_decoding/sql/stream.sql      | 18 ++++++++++++++++++
src/backend/access/index/genam.c          | 16 ++++++++++++++++
3 files changed, 54 insertions(+)


pgsql-committers by date:

Previous
From: Daniel Gustafsson
Date:
Subject: pgsql: doc: Quote value in SET NAMES documentation
Next
From: Daniel Gustafsson
Date:
Subject: Re: pgsql: Fix fetching default toast value during decoding of in-progress