pg.ddx.io pgsql-committers@postgresql.org mailing list archivehelp / color / mirror / Atom feed
pgsql: Fix replica identity check for MERGE. 5+ messages / 1 participants [nested] [flat]
* pgsql: Fix replica identity check for MERGE. @ 2025-09-04 10:53 Dean Rasheed <dean.a.rasheed@gmail.com> 0 siblings, 0 replies; 5+ messages in thread From: Dean Rasheed @ 2025-09-04 10:53 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix replica identity check for MERGE. When executing a MERGE, check that the target relation supports all actions mentioned in the MERGE command. Specifically, check that it has a REPLICA IDENTITY if it publishes updates or deletes and the MERGE command contains update or delete actions. Failing to do this can silently break replication. Author: Zhijie Hou <houzj.fnst@fujitsu.com> Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com> Reviewed-by: Dean Rasheed <dean.a.rasheed@gmail.com> Tested-by: Chao Li <li.evan.chao@gmail.com> Discussion: https://postgr.es/m/OS3PR01MB57180C87E43A679A730482DF94B62@OS3PR01MB5718.jpnprd01.prod.outlook.com Backpatch-through: 15 Branch ------ REL_16_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/421d7a1579853220dfc650126bd43718acdae84b Modified Files -------------- src/backend/executor/execMain.c | 27 ++++++++++++++++++++++++--- src/backend/executor/execPartition.c | 6 ++++-- src/backend/executor/nodeModifyTable.c | 6 +++++- src/include/executor/executor.h | 3 ++- src/test/regress/expected/publication.out | 28 ++++++++++++++++++++++++++++ src/test/regress/sql/publication.sql | 31 +++++++++++++++++++++++++++++++ 6 files changed, 94 insertions(+), 7 deletions(-) ^ permalink raw reply [nested|flat] 5+ messages in thread
* pgsql: Fix replica identity check for MERGE. @ 2025-09-04 10:53 Dean Rasheed <dean.a.rasheed@gmail.com> 0 siblings, 0 replies; 5+ messages in thread From: Dean Rasheed @ 2025-09-04 10:53 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix replica identity check for MERGE. When executing a MERGE, check that the target relation supports all actions mentioned in the MERGE command. Specifically, check that it has a REPLICA IDENTITY if it publishes updates or deletes and the MERGE command contains update or delete actions. Failing to do this can silently break replication. Author: Zhijie Hou <houzj.fnst@fujitsu.com> Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com> Reviewed-by: Dean Rasheed <dean.a.rasheed@gmail.com> Tested-by: Chao Li <li.evan.chao@gmail.com> Discussion: https://postgr.es/m/OS3PR01MB57180C87E43A679A730482DF94B62@OS3PR01MB5718.jpnprd01.prod.outlook.com Backpatch-through: 15 Branch ------ REL_18_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/311340f17863b0f87b3af32649ee5a2a58988b08 Modified Files -------------- src/backend/executor/execMain.c | 11 ++++++++++- src/test/regress/expected/publication.out | 28 ++++++++++++++++++++++++++++ src/test/regress/sql/publication.sql | 31 +++++++++++++++++++++++++++++++ 3 files changed, 69 insertions(+), 1 deletion(-) ^ permalink raw reply [nested|flat] 5+ messages in thread
* pgsql: Fix replica identity check for MERGE. @ 2025-09-04 10:53 Dean Rasheed <dean.a.rasheed@gmail.com> 0 siblings, 0 replies; 5+ messages in thread From: Dean Rasheed @ 2025-09-04 10:53 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix replica identity check for MERGE. When executing a MERGE, check that the target relation supports all actions mentioned in the MERGE command. Specifically, check that it has a REPLICA IDENTITY if it publishes updates or deletes and the MERGE command contains update or delete actions. Failing to do this can silently break replication. Author: Zhijie Hou <houzj.fnst@fujitsu.com> Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com> Reviewed-by: Dean Rasheed <dean.a.rasheed@gmail.com> Tested-by: Chao Li <li.evan.chao@gmail.com> Discussion: https://postgr.es/m/OS3PR01MB57180C87E43A679A730482DF94B62@OS3PR01MB5718.jpnprd01.prod.outlook.com Backpatch-through: 15 Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/fc6600fc1cd13b695fbde4b5f3ff0d2e97c36dea Modified Files -------------- src/backend/executor/execMain.c | 11 ++++++++++- src/test/regress/expected/publication.out | 28 ++++++++++++++++++++++++++++ src/test/regress/sql/publication.sql | 31 +++++++++++++++++++++++++++++++ 3 files changed, 69 insertions(+), 1 deletion(-) ^ permalink raw reply [nested|flat] 5+ messages in thread
* pgsql: Fix replica identity check for MERGE. @ 2025-09-04 10:53 Dean Rasheed <dean.a.rasheed@gmail.com> 0 siblings, 0 replies; 5+ messages in thread From: Dean Rasheed @ 2025-09-04 10:53 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix replica identity check for MERGE. When executing a MERGE, check that the target relation supports all actions mentioned in the MERGE command. Specifically, check that it has a REPLICA IDENTITY if it publishes updates or deletes and the MERGE command contains update or delete actions. Failing to do this can silently break replication. Author: Zhijie Hou <houzj.fnst@fujitsu.com> Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com> Reviewed-by: Dean Rasheed <dean.a.rasheed@gmail.com> Tested-by: Chao Li <li.evan.chao@gmail.com> Discussion: https://postgr.es/m/OS3PR01MB57180C87E43A679A730482DF94B62@OS3PR01MB5718.jpnprd01.prod.outlook.com Backpatch-through: 15 Branch ------ REL_17_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/76f45be9315bb02b6f9f41b17e5a448c6241bb20 Modified Files -------------- src/backend/executor/execMain.c | 11 ++++++++++- src/test/regress/expected/publication.out | 28 ++++++++++++++++++++++++++++ src/test/regress/sql/publication.sql | 31 +++++++++++++++++++++++++++++++ 3 files changed, 69 insertions(+), 1 deletion(-) ^ permalink raw reply [nested|flat] 5+ messages in thread
* pgsql: Fix replica identity check for MERGE. @ 2025-09-04 10:53 Dean Rasheed <dean.a.rasheed@gmail.com> 0 siblings, 0 replies; 5+ messages in thread From: Dean Rasheed @ 2025-09-04 10:53 UTC (permalink / raw) To: pgsql-committers@lists.postgresql.org Fix replica identity check for MERGE. When executing a MERGE, check that the target relation supports all actions mentioned in the MERGE command. Specifically, check that it has a REPLICA IDENTITY if it publishes updates or deletes and the MERGE command contains update or delete actions. Failing to do this can silently break replication. Author: Zhijie Hou <houzj.fnst@fujitsu.com> Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com> Reviewed-by: Dean Rasheed <dean.a.rasheed@gmail.com> Tested-by: Chao Li <li.evan.chao@gmail.com> Discussion: https://postgr.es/m/OS3PR01MB57180C87E43A679A730482DF94B62@OS3PR01MB5718.jpnprd01.prod.outlook.com Backpatch-through: 15 Branch ------ REL_15_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/5481cc332b0fc8ca242966813a6675a514c6917b Modified Files -------------- src/backend/executor/execMain.c | 27 ++++++++++++++++++++++++--- src/backend/executor/execPartition.c | 6 ++++-- src/backend/executor/nodeModifyTable.c | 6 +++++- src/include/executor/executor.h | 3 ++- src/test/regress/expected/publication.out | 28 ++++++++++++++++++++++++++++ src/test/regress/sql/publication.sql | 31 +++++++++++++++++++++++++++++++ 6 files changed, 94 insertions(+), 7 deletions(-) ^ permalink raw reply [nested|flat] 5+ messages in thread
end of thread, other threads:[~2025-09-04 10:53 UTC | newest] Thread overview: 5+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2025-09-04 10:53 pgsql: Fix replica identity check for MERGE. Dean Rasheed <dean.a.rasheed@gmail.com> 2025-09-04 10:53 pgsql: Fix replica identity check for MERGE. Dean Rasheed <dean.a.rasheed@gmail.com> 2025-09-04 10:53 pgsql: Fix replica identity check for MERGE. Dean Rasheed <dean.a.rasheed@gmail.com> 2025-09-04 10:53 pgsql: Fix replica identity check for MERGE. Dean Rasheed <dean.a.rasheed@gmail.com> 2025-09-04 10:53 pgsql: Fix replica identity check for MERGE. Dean Rasheed <dean.a.rasheed@gmail.com>
This inbox is served by DDX for PostgreSQL; see mirroring instructions for how to clone and mirror all data and code used for this inbox