Improve errdetail for logical replication conflict messages.
Amit Kapila <akapila@postgresql.org>
Improve errdetail for logical replication conflict messages. This change enhances the clarity and usefulness of error detail messages generated during logical replication conflicts. The following improvements have been made: 1. Eliminate redundant output: Avoid printing duplicate remote row and replica identity values for the multiple_unique_conflicts conflict type. 2. Improve message structure: Append tuple values directly to the main error message, separated by a colon (:), for better readability. 3. Simplify local row terminology: Remove the word 'existing' when referring to the local row, as this is already implied by context. 4. General code refinements: Apply miscellaneous code cleanups to improve how conflict detail messages are constructed and formatted. Author: Hayato Kuroda <kuroda.hayato@fujitsu.com> Reviewed-by: Shveta Malik <shveta.malik@gmail.com> Reviewed-by: Amit Kapila <amit.kapila16@gmail.com> Reviewed-by: Masahiko Sawada <sawada.mshk@gmail.com> Reviewed-by: Zhijie Hou <houzj.fnst@fujitsu.com> Discussion: https://postgr.es/m/CAHut+Psgkwy5-yGRJC15izecySGGysrbCszv_z93ess8XtCDOQ@mail.gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/logical-replication.sgml | modified | +11 −12 |
| src/backend/replication/logical/conflict.c | modified | +149 −99 |
| src/include/replication/conflict.h | modified | +1 −1 |
| src/test/subscription/t/001_rep_changes.pl | modified | +3 −3 |
| src/test/subscription/t/013_partition.pl | modified | +7 −7 |
| src/test/subscription/t/029_on_error.pl | modified | +1 −1 |
| src/test/subscription/t/030_origin.pl | modified | +2 −2 |
| src/test/subscription/t/035_conflicts.pl | modified | +18 −24 |
Discussion
- Simplify code building the LR conflict messages 34 messages · 2025-11-28 → 2026-01-21