| From: | Andrey Borodin <x4mmm(at)yandex-team(dot)ru> |
|---|---|
| To: | Bryan Green <dbryan(dot)green(at)gmail(dot)com> |
| Cc: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
| Subject: | Re: [PATCH]Fix pg_xact corruption from subtransaction abort after subcommit |
| Date: | 2026-08-09 17:57:17 |
| Message-ID: | C42AA2E6-09D1-49A3-BC22-F61FFA263802@yandex-team.ru |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi Bryan,
Thank you for finding this.
> On 9 Aug 2026, at 08:39, Bryan Green <dbryan(dot)green(at)gmail(dot)com> wrote:
>
> path can corrupt pg_xact
That's a very interesting corruption case. We observed something very much like
this with "failed to find parent tuple for heap-only tuple".
But so far I can't build a test with an error between
AtSubCommit_childXids();
and
PopTransaction();
I meant, yeah, extensions can do this, but that's a weak argument. Maybe some
allocations inside AtSubCommit_Notify() can cause catachable error... IDK.
This actually looks like a corruption that bite us. But how an error can happen
in this path? If it's an extension, which extension is thorwin it? In-tree
extensions seems to avoid erroring out in callbacks. Maybe something in
AtEOXact_GUC()?
Best regards, Andrey Borodin.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2026-08-09 18:28:48 | Re: 2026-08-13 release announcement draft |
| Previous Message | Jonathan S. Katz | 2026-08-09 17:39:30 | 2026-08-13 release announcement draft |