Acquire spinlock when updating 2PC slot data during logical decoding creation

The creation of a logical decoding context in CreateDecodingContext()
updates some data of its slot for two-phase transactions if enabled by
the caller, but the code forgot to acquire a spinlock when updating
these fields like any other code paths.  This could lead to the read of
inconsistent data.

Oversight in a8fd13c.

Author: Sawada Masahiko
Discussion: 
https://postgr.es/m/cad21aoad8_fp47191lkuecjdd3dyhoq4taucfco1_ter_jq...@mail.gmail.com
Backpatch-through: 15

Branch
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/6f25e48774fe9302ca08dae07420df95998d792a

Modified Files
--------------
src/backend/replication/logical/logical.c | 2 ++
1 file changed, 2 insertions(+)

Reply via email to