Re: BUG #18986: SIGSEGV in nodeModifyTable.c during Parallel Execution
Dean Rasheed <dean.a.rasheed@gmail.com>
From: Dean Rasheed <dean.a.rasheed@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, y@lll.gd, pgsql-bugs@lists.postgresql.org
Date: 2025-07-16T13:05:06Z
Lists: pgsql-bugs
Attachments
- fix-merge-bug.patch (text/x-patch) patch
- fix-merge-bug-17.patch (text/x-patch) patch
On Wed, 16 Jul 2025 at 11:49, Michael Paquier <michael@paquier.xyz> wrote: > > > Question: Is it OK to change the signature of ExecBRUpdateTriggers() > > in v18? > > We are still in beta, so that's not a problem for v18 and HEAD. Cool. I thought so, but I wanted to check. Attached is a patch for HEAD/v18, and a slightly different one for v17, preserving the trigger ABI in the standard way. I decided to do this by adding an extra "is_merge_update" boolean parameter, rather than passing the commandType because that looked slightly neater. It was also necessary to update ExecBRDeleteTriggers(), since otherwise a concurrent MERGE DELETE could do the wrong thing (execute the wrong action, rather than seg-faulting). That was picked up by an existing isolation test case added by 9321c79, so no need for more tests. I haven't tested this against the OP's reproducer. Regards, Dean
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix concurrent update trigger issues with MERGE in a CTE.
- 91ad1bdef8e4 17.6 landed
- 27c7c11366f7 18.0 landed
- 5022ff250eeb 19 (unreleased) landed
-
Stamp 17.5.
- 5e2f3df49d42 17.5 cited
-
Fix concurrent update issues with MERGE.
- 9321c79c86e6 16.0 cited