From: | Amit Kapila <akapila(at)postgresql(dot)org> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: WAL log unchanged toasted replica identity key attributes. |
Date: | 2022-02-14 03:35:18 |
Message-ID: | E1nJS90-0002Gt-Fb@gemulon.postgresql.org |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
WAL log unchanged toasted replica identity key attributes.
Currently, during UPDATE, the unchanged replica identity key attributes
are not logged separately because they are getting logged as part of the
new tuple. But if they are stored externally then the untoasted values are
not getting logged as part of the new tuple and logical replication won't
be able to replicate such UPDATEs. So we need to log such attributes as
part of the old_key_tuple during UPDATE.
Reported-by: Haiying Tang
Author: Dilip Kumar and Amit Kapila
Reviewed-by: Alvaro Herrera, Haiying Tang, Andres Freund
Backpatch-through: 10
Discussion: https://postgr.es/m/OS0PR01MB611342D0A92D4F4BF26C0F47FB229@OS0PR01MB6113.jpnprd01.prod.outlook.com
Branch
------
REL_11_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/1cd5802ac69a1831b1a1c3b7c69dd99ae80f0b5b
Modified Files
--------------
contrib/test_decoding/expected/toast.out | 2 +-
doc/src/sgml/ref/alter_table.sgml | 9 +-
src/backend/access/heap/heapam.c | 176 ++++++++++++++++++++-----------
3 files changed, 122 insertions(+), 65 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Thomas Munro | 2022-02-14 04:14:27 | pgsql: Use WL_SOCKET_CLOSED for client_connection_check_interval. |
Previous Message | Thomas Munro | 2022-02-14 02:56:47 | pgsql: Track LLVM 15 changes. |