| From: | Michael Ries <mries(at)salesforce(dot)com> |
|---|---|
| To: | pgsql-bugs(at)lists(dot)postgresql(dot)org |
| Cc: | dean(dot)a(dot)rasheed(at)gmail(dot)com |
| Subject: | Re: Bug in statement trigger for MERGE operations that move rows between partitions |
| Date: | 2026-10-20 15:36:44 |
| Message-ID: | CAKWDHLiXMhzWxyY4KxPurX1-S=ZftX6EB13gGT2xDkP-GgKLeQ@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
Following up on my bug report on October 8th, I think putting it in a
markdown file was not the convention for this mailing list.
The bug occurs after PG 15.6+ or PG 16.2+. When a MERGE UPDATE action
moves a row to another partition, the row is missing from the
statement-level AFTER UPDATE transition tables (OLD TABLE/ NEW TABLE).
A plain UPDATE that moves the row is correct on every version I
tested. The row movement can be seen on a local build before commit
c0bfdaf2b (REL_15) / 06a546382 (REL_16) / a4f7d33a9 (master)
A brief psql repro is in the markdown file along with a minimal patch
to fix the issue on REL_15. I'm happy to help open a PR or otherwise
suggest fixes, but I first wanted to open the bug and see if anyone
has guidance on how to handle it from here.
On Thu, Oct 8, 2026 at 3:44 PM Michael Ries <mries(at)salesforce(dot)com> wrote:
>
>
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Rui Zhao | 2026-10-20 15:43:41 | GIN jsonb_ops misses root strings in strict jsonpath queries |
| Previous Message | Staroverov Ilja | 2026-10-20 13:20:41 | Re: BUG #19644: byteaout, float8out and float4out are marked IMMUTABLE but depend on GUCs |