Thread: pgsql: WAL log unchanged toasted replica identity key attributes.
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_12_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/ce349cf176e20b6d12b10e1d3ede339acc77b67d Modified Files -------------- contrib/test_decoding/expected/toast.out | 2 +- doc/src/sgml/ref/alter_table.sgml | 9 +- src/backend/access/heap/heapam.c | 181 ++++++++++++++++++++----------- 3 files changed, 123 insertions(+), 69 deletions(-)